Tech Neo技巧沙龙 | 11月25号,九州云/ZStack与您一路商量云时代收集界线治理实践
1. 背景
Apache Flink 和 Apache Storm 是当前业界广泛应用的两个分布式及时F算框架。个中 Apache Storm(以下简称“Storm”)在美团点评及时F算营业中已有较为成熟的应用(可参考 Storm 的靠得住性包管测试),有治理平台、常用 API 和响应的文档,大年夜量及时功课基于 Storm 构建。而 Apache Flink(以下简称“Flink”)在近期倍受存眷,具有高吞吐、低延迟、高靠得住和精确计算等特点,对事宜窗口有很好的支撑,今朝在美团点评及时F算营业中也已有必定应用。
为深刻熟悉懂得 Flink 框架,验证其稳定性和靠得住性,评估其及时处理机能,辨认该体系中的缺点,找到其机能瓶颈并进行优化,给用户供给最合适的及时F算引擎,我们以实践经验丰富的 Storm 框架作为对比,进行了一系列实验测试 Flink 框架的机能,计算 Flink 作为确保“至少一次”和“正好一次”语义的及时F算框架时对资本的消费,为及时E?娼台资本筹划、框架选择、机能调优等决定计划及 Flink 平台的扶植提出建议并供给数据支撑,为后续的 SLA 扶植供给必定参考。
2. 测试目标
评估不归并景、不合数据压力下 Flink 和 Storm 两个及时F算框架今朝的机能表示,获取其具体机能数据并找到处理机能的极限;懂得不合设备对 Flink 机能影响的程度,分析各类设备的实用处景,大年夜而得出调优建议。
2.1 测试场景
“输入-输出”简单处理场景
经由过程对“输入-输出”如许简单处理逻辑场景的测试,尽可能削减其它身分的干扰,反竽暌钩两个框架本身的机能。
同时测算框架处理才能的极限,处理加倍复杂的逻辑的机能不会比纯粹“输入-输出”更高。
用户功课耗时较长的场景
如不雅用户的处理逻辑较为复杂,或是拜访了数据库等外部组件,其履行时光会增大年夜,功课的机能会受到影响。是以,我们测试了用户功课耗时较长的场景下两个框架的调剂机能。
窗口统计场景
Storm Task 和 Flink Task (每个测试用例不合)大年夜 Kafka Topic Data 雷同的 Offset 开端花费,并将结不雅及响应 inTime、outTime 时伎佳橹别写入两个 Topic(Topic Storm 和 Topic Flink)中。
及时F算中常有对时光窗口或计数窗口进行统计的需求,例如一天中每五分钟的拜访量,每 100 个订单中有若干个应用了优惠等。Flink 在窗口支撑上的功能比 Storm 加倍强大年夜,API 加倍完美,然则我们同时也想懂得在窗口统计这个常用处景下两个框架的机能。
精确计算场景(即消息送达语义为“正好一次”)
3.2 框架参数
4. 测试办法
4.1 测试流程
数据临盆
数据处理
指标统计
个中 QPS 在 80000 以上的测试数据跨越了 Storm 单线程的吞吐才能,无法对 Storm 进行测试,只有 Flink 的曲线。
Metrics Collector 按 outTime 的时光窗口大年夜这两个 Topic 中统计测试指标,每五分钟将响应的指标写入 MySQL 表中。
Metrics Collector 按 outTime 取五分钟的滚动时光窗口,计算五分钟的平均吞吐(输出数据的条数)、五分钟内的延迟(outTime – eventTime 或 outTime – inTime)的中位数及 99 线等指标,写入 MySQL 响应的数据表中。最后对 MySQL 表中的吞吐计算均值,延迟中位数及延迟 99 线拔取中位数,绘制图像并分析。
4.2 默认参数
Storm 和 Flink 默认均为 At Least>
Storm 仅能包管“至多一次” (At Most>
Sleep
推荐阅读
Tech Neo技巧沙龙 | 11月25号,九州云/ZStack与您一路商量云时代收集界线治理实践 当下,大年夜多半企业都明白大年夜数据的感化。大年夜数据——这个宏大年夜甚至是有时是胜过性>>>详细阅读
地址:http://www.17bianji.com/lsqh/39040.html
1/2 1