博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
实时交互平台流程与技术分析
阅读量:6148 次
发布时间:2019-06-21

本文共 643 字,大约阅读时间需要 2 分钟。

  最近几个月一直在做基于storm的流式处理,索性整理下所有的知识点与技术知识。

  一、数据准备

  1、首先,我们需要用户的所有数据,使用MapReduce进行数据处理,生成业务宽表导入hbase与Redis,用于后续实时处理直接从Redis中获取相应数据,减少读写磁盘IO的消耗。

 

  二、消息的接入

  1、传入的数据是经过二进制处理的,所以使用jetty轻量级服务对传入的报文进行接入解析,同时部署多个服务,使用nginx进行负载均衡。

 

  2、每个服务同时启动多个线程进行消息的接入,通过blockingQueue进行存储,随后进行报文解析,序列化后发送对应主题的kafka.

 

  三、storm处理

  1、使用集成的kafkaspout进行消息的接入代替storm的spout,降低工程复杂度,可直接编写bolt进行业务逻辑处理,随后进行数据的一次性过滤bolt,验证消息的正确性并并封装入对象中。

 

  2、通过消息中的相应主键,从Redis中加载该用户的全量数据,以便后续业务处理(存入hbase是以防redis出现问题进而再查询hbase,同时hbase中的rowkey做了散列,数据均匀分布在每个region中)。

 

  3、加载配置活动规则,这些规则通过前台web系统配置保存,存储于redis中。对多个规则进行遍历匹配,封装成一个大的对象,传入下游推送拓扑。

 

  4、推送拓扑在接收到消息后,从对象中获取封装的消息对象的渠道对象,对其进行遍历发送至不同的渠道。

转载地址:http://ymmya.baihongyu.com/

你可能感兴趣的文章
10、程序员和编译器之间的关系
查看>>
前端学习之正则表达式
查看>>
配置 RAILS FOR JRUBY1.7.4
查看>>
AndroidStudio中导入SlidingMenu报错解决方案
查看>>
修改GRUB2背景图片
查看>>
Ajax异步
查看>>
好记性不如烂笔杆-android学习笔记<十六> switcher和gallery
查看>>
JAVA GC
查看>>
3springboot:springboot配置文件(外部配置加载顺序、自动配置原理,@Conditional)
查看>>
9、Dubbo-配置(4)
查看>>
前端第七天
查看>>
图解SSH原理及两种登录方法
查看>>
[转载] 七龙珠第一部——第058话 魔境圣地
查看>>
【总结整理】JQuery基础学习---样式篇
查看>>
查询个人站点的文章、分类和标签查询
查看>>
基础知识:数字、字符串、列表 的类型及内置方法
查看>>
JSP的隐式对象
查看>>
JS图片跟着鼠标跑效果
查看>>
[SCOI2005][BZOJ 1084]最大子矩阵
查看>>
学习笔记之Data Visualization
查看>>