实时引擎的核心部分 。主要负责对事件数据进行加工处理,主要包括:
- 业务数据的统一标识补全,将多源数据进行打通关联 。
- 对业务数据进行各种指标计算 。常见的是基于时间窗口和会话窗口的流式计算,一般使用Flink来搭建 。
- 目标用户匹配 。常用的用户直接交并差集计算,能够更好的对目标用户进行实验 。
- 业务规则匹配 。基于业务逻辑对用户的数据进行匹配 。
负责结果数据输出分发,主要目的是数据调配和触达发送策略 。
数据管理
保存事件元数据的配置 。
数据仓库
离线数据的储存,作用于流程中各种数据处理流程 。
三、关键组件和流程设计3.1 事件实时接入的扩展性设计由于公司内部业务技术栈不尽相同,需要支持多种业务事件数据接入方式,比如通用HTTP接口,Java技术栈的DUBBO接口、和MQ消息队列的方式,为了系统内部可以进行统一管理,最后转成MQ的方式进行统一分发 。
3.1.1 接入队列设计由于事件数据源的不同,需要对宿主业务进行MQ队列流量管控隔离 。不同业务系统事件接入需求有以下不同的设计方案:
方案一:为每个接入的事件创建一条新队列,不同事件使用不同队列 。

文章插图
- 优点:最小粒度的流量控制,不同事件接入之间可以做到隔离,互不影响 。
- 缺点:每次接入新事件都需要申请创建队列,随着事件接入数据增加,队列维护成本比较高 。

文章插图
- 优点:按接入方来进行流量控制,接入方之间进行隔离,同一接入方只需在首次接入使用时创建队列,后续接入新事件无需创建 。
- 缺点: 不同接入方接入时需要创建队列,同一接入方不隔离,有相互影响的风险 。
- 优点:业务方使用友好,后续接入无需变更,耦合度小,方便切换MQ中间件 。
- 缺点:最大粒度的流量控制,无法做到隔离,风险较高,需要经常进行队列扩容 。
- 优点:按事件的维度进行流量控制 。
- 缺点:对接入方使用不够友好,不同业务接入时需要创建队列 。
- 二手车检测项目有哪些
- day09-1存储引擎
- 推荐几本好的营销学社交学的好书
- 小米电视如何看实时电视(小米电视怎么能当正常电视看)
- 07 ClickHouseClickHouse数据库引擎解析
- 如何评价迪士尼电影的宣传和营销
- 高德导航实时路况问题
- 新产品如何营销
- 引擎之旅 Chapter.4 日志系统
- 稿定设计怎么用
