背景介绍
- Iterable 的营销自动化工具:介绍 Iterable 的核心营销自动化工具,特别是其“工作流”功能,强调其爆炸性和实时性,以及通过拖放界面混合匹配过滤器和操作进行营销活动的特点。
- 工作流活动:包括延迟节点和访客跟踪,展示访客 ID 的跟踪机制。
- UI 可观察性:强调用户界面可观察性,简化操作流程。
- 入口限制:讨论入口限制问题,并引入 RabbitMQ 作为解决方案。
当前实施
- RabbitMQ:作为消息队列,处理流量控制,确保系统稳定性。
- 流量控制:通过 RabbitMQ 实现流量控制,应对高并发场景。
系统规模与挑战
- Scale:系统每天处理约 1B 工作流节点,每天约 100M 新用户进入工作流程,在任何时间点,数以亿计的用户处于工作流程中。
- 技术架构:使用 RabbitMQ、Redis 和 PG 组成技术架构,目标实现单一数据源,提高性能和正确性。
阶段性改进
- 阶段 1:插入式更换:通过队列驱动器处理,隐式持有访客跟踪状态的真实性,带来对计划消息的内置支持、更高的吞吐量和成本、合规性等好处。
- 阶段 2:交易 Ack 和重新入队:确保交易 Ack 和重新入队操作是原子的,提高数据一致性。
- 阶段 3:派生 UI 状态:进一步优化 UI 状态管理。
未来展望
- Flink 和超越:计划使用 Flink、Pulsar Flink 连接器和 Pulsar 处理入口限制,进一步提升系统性能和扩展性。
- Flink 的入口限制:通过 Flink 解决入口限制问题,实现更高效的流量控制。
回顾与结论
- 分阶段替换:逐步替换 RabbitMQ 和其他数据存储,通过事务改进正确性。
- 核心观点:通过分阶段替换和事务管理,提升系统性能和正确性,实现可扩展的营销自动化。
附录
- 颜色方案:提供多种颜色方案供选择,包括红色、紫色、凉爽的绿色、青色、灰色和白色。
- 图标内容:展示不同颜色图标的对应内容,涵盖发送时间优化、通道优化、频率优化、单个数据平台、工作流、交叉通道、易用性、1-TO-1 相关性、竞选活动、个性化增长、电子邮件、现代体系结构、数据丢失、错误、智能电话、Webinar 响应、搜索、低级个性化、受众连接、错误、受众连接、品牌、爱、竞选成功、重新连接、细分、桌面内容、中等方向、Feed 数据、事件数据、消息传输、SMS、引用、高亮、欢迎促销活动、目标营销、公告、交易、节奏、重新参与自动化、价值、在线购物、用户配置文件数据等。
- 分页符:提供多个分页符选项,用于分隔不同部分内容。
- 统计数据展示:提供多种统计数据展示方式,包括条形图和表格。
- 图像和截图:支持图像和截图展示,并提供多种布局选项。
- 可访问节点:提供可访问节点功能,允许移动、旋转和调整图像大小。
- 引证:支持引证功能,可调整高度适应较长的内容。
- Q&A / 结束幻灯片:提供问答和结束幻灯片。