“事件”对于开发者而言是个熟悉的词,各种开发框架、编程语言中都或多或少有“事件”的概念,但很少有书籍谈及如何运用事件对系统建模。“流”的概念亦是如此,计算机世界中充斥着各种流:输入输出流、网络流,还有最近几年出现的流计算。而《事件流实战》把事件与流的概念结合在一起,展示了一种崭新的架构;通过流这种数据架构在系统之间传递事件,不仅解除了系统间的耦合,也为系统带来了更好的扩展性,同时数据分析师可以自由地开展各种分析。
Linkedln、Netflix等知名应用都通过实时响应用户和系统事件,来提高灵活度和响应速度。在大规模系统中,需要能高效地监控、管理和处理大量的事件流。Kafkal具以及诸如统一日志处理的创新模式可帮助我们为基于事件的系统创建连贯的数据处理架构。
《事件流实战》讲解如何使用统一日志模式,来聚合、存储和处理事件流。在这本实用指南中,你将看到Lambda架构、流聚合和事件重放处理等重要的系统设计,还将看到扩展、弹性和高级流模式!
读完《事件流实战》,你将能设计出易于构建、部署和维护的由数据驱动的大型应用。
《事件流实战》主要内容:
校验与监控事件流
事件分析
事件建模
Apache Kafka与Amazon Kinesis的使用示例
读者对象:
适合具有Java、Scala或Python编程经验的读者。
第I部分 事件流与统一日志
第1章 事件流
1.1 术语定义
1.1.1 事件
1.1.2 持续事件流
1.2 探寻我们熟悉的事件流
1.2.1 应用级日志
1.2.2 站点分析
1.2.3 发布/订阅消息
1.3 统一持续事件流
1.3.1 古典时代
1.3.2 混合时代
1.3.3 统一时代
1.4 统一日志的应用场景
1.4.1 用户反馈环路
1.4.2 整体系统监控
1.4.3 应用系统版本在线升级
1.5 本章小结
第2章 统一日志
2.1 深入统一日志
2.1.1 统
2.1.2 只可追加
2.1.3 分布式
2.1.4 有序性
2.2 引入我们的应用
2.2.1 识别关键事件
2.2.2 电子商务中的统一日志
2.2.3 首个事件建模
2.3 配置统一日志
2.3.1 下载并安装Apache Kafka
2.3.2 创建流
2.3.3 发送和接收事件
2.4 本章小结
第3章 使用Apache Kafka进行事件流处理
3.1 事件流处理入门
3.1.1 为什么要处理事件流?
3.1.2 单事件处理
3.1.3 多事件处理
3.2 设计第一个流处理程序
3.2.1 将Kafka作为黏合剂
3.2.2 明确需求
3.3 编写一个简单的Kafka Worker
3.3.1 配置开发环境
3.3.2 应用配置
3.3.3 从Kafka读取事件
3.3.4 向Kafka写入事件
3.3.5 整合读取与写入
3.3.6 测试"
3.4 编写单事件处理器
3.4.1 编写事件处理器
3.4.2 更新mam方法
3.4.3 再次测试
3.5 本章小结
第4章 使用Amazon Kinesis处理流事件
4.1 向Kinesis写入事件
4.1.1 系统监控与统一日志
4.1.2 与Kafka的术语差异
4.1.3 配置事件流
4.1.4 事件建模
4.1.5 编写代理程序
4.2 从Kinesis读取事件
4.2.1 Kinesis的框架与SDK
4.2.2 使用AWSCLI读取事件
4.2.3 使用boto监控Kinesis stream
4.3 本章小结
第5章 有状态的流式处理
……
第II部分 针对流的数据工程
第III部分 事件分析
温馨提示:请使用泸西县图书馆的读者帐号和密码进行登录
★内容清晰,技术精确,讲解细腻,文字优美,值得一读。
——Thorsten P.Weber, Mercateo
★“精彩绝伦!由浅入深地介绍事件流及相关技术。”
——Cosimo Attanasi,ER Sistemi
★“一本引人入胜的书籍,探讨数据流的重要性、相关主题和工作原理,包含大量源于实践的真知灼见!”
——Miguel Eduardo Gil Biraud, Minddistrict
★“示例代码丰富,紧贴实用,允许你在多个环境、编程语言和设计原则之间灵活切换;本书将成为你踏入事件流世界的跳板。”
——Bartosz“Azatar” Solowiej, pSilent Partners