zoukankan      html  css  js  c++  java
  • 小视频去重项目思考

    小视频去重项目思考

    接手公司小视频去重业务已有大半年,从流程设计、硬件调度、业务功能实现、测试与迭代,其中给我的成长很多,思考了一些东西,理解了一些产品开发的规约与思路。

    小视频去重,业务层面包括小视频的本地下载、去重逻辑实现与重复视频拉黑。其中小视频下载需具体业务部门调度,需要提供满足负载均衡的接口,以实现多机器的充分利用和正常的接口返回时间;去重逻辑较复杂,耗时较长,需参考观察者模式,构建异步、负载均衡处理集群;重复视频拉黑需要定时作业调度,并给以运营部分每日处理结果反馈。基于上述内容,微服务构建可满足合理的代码多模块构建需求,hbase保存视频特征、mysql统计结果信息、redis处理异步请求的多重数据存储方案可解决整体数据的管理与分析。

    子模块分类:

    1. eureka-server - 注册中心,有效监控和管理多模块运行状况
    2. video-ribbon - 对外负载均衡接口发布组件,完成处理视频url入库redis接口的对外暴露
    3. video-download - 根据视频url下载,并包装网络路径url、共享盘路径path到redis处理队列
    4. video-retrieval - 小视频去重模块,包含查询和入库hbase、单调视频校验、处理结果入库mysql等逻辑
    5. video-schedule - 定时作业调度模块,处理每日定时去重结果分析与调用外部接口完成反馈

       为什么要使用redis构建服务间的消息机制:

        因为消息使用的是观察者模式,观察者模式的好处是可以实现多个消费事务与触发事务的解耦

  • 相关阅读:
    一个JavaScript反射使用的例子
    JQuery中的each()的使用
    WebHome < Visualization < Virtual Test Facility
    UsageHdf < Amroc < Virtual Test Facility
    批量去除输出数据文件名前面的"output“
    官网EI数据库更新
    NASA CEA 安装指南
    FORTRAN学习网站
    Ubuntu下批量使用Tecplot的preplot命令对数据进行处理
    FORTRAN和C语言数组循环顺序
  • 原文地址:https://www.cnblogs.com/nyatom/p/11015536.html
Copyright © 2011-2022 走看看