开发者社区> 问答> 正文

聊聊JStorm的最佳实践

在3月1日 首届阿里开源峰会上 ,阿里巴巴中间件技术专家 卫乐 将为大家分享JStorm的相关话题。


JStorm是阿里基于Storm开发的纯Java的实时计算框架,自开源以来历经了多个版本的更新和演化,目前也是阿里巴巴集团内部重要的实时计算框架之一。本次在阿里开源峰会上,卫乐分享的内容主要涵盖JStorm在阿里内部的使用场景、版本/功能演进,以及一些开发、部署、运维上的最佳实践。
先在普及一下Alibaba JStorm的概念
Alibaba JStorm 是一个强大的企业级流式计算引擎,是Apache Storm 的4倍性能, 可以自由切换行模式或mini-batch 模式,JStorm 不仅提供一个流式计算引擎, 还提供实时计算的完整解决方案, 涉及到更多的组件, 如jstorm-on-yarn, jstorm-on-docker, SQL Engine, Exactly-Once Framework 等等。


应用场景
JStorm处理数据的方式是基于消息的流水线处理, 因此特别适合无状态计算,也就是计算单元的依赖的数据全部在接受的消息中可以找到, 并且最好一个数据流不依赖另外一个数据流。因此,常常用于:·日志分析,从日志中分析出特定的数据,并将分析的结果存入外部存储器如数据库。目前,主流日志分析技术就使用JStorm或Storm·管道系统, 将一个数据从一个系统传输到另外一个系统, 比如将数据库同步到Hadoop·消息转化器, 将接受到的消息按照某种格式进行转化,存储到另外一个系统如消息中间件·统计分析器, 从日志或消息中,提炼出某个字段,然后做count或sum计算,最后将统计值存入外部存储器。··中间处理过程可能更复杂。·实时推荐系统, 将推荐算法运行在jstorm中,达到秒级的推荐效果有一篇相关文章大家可详细了解——《CentOS 6.8 实战部署JStorm集群》
那么就跟大家聊一聊
你是否使用过或正在使用JStorm?
使用的应用场景是什么?使用中的问题或是心得?
亦或是你的日志分析、管道系统、消息转化器、统计分析器是用什么技术实现的,优势与瓶颈是什么?
欢迎大家一起来聊,卫乐将在话题中与大家进行交流,对于使用反馈或忙得分享的经典回复我们将进行奖励。
今天我们聊一聊聊聊JStorm的最佳实践
以下是网友热议内容:
来自云栖网友观点:似水的流年
jstorm反应速度快,降低了运维成本,对于处理器,内存,网络等能动态调度非常的棒,而且性能很好。
来自云栖网友观点:muji318
1.主要用jstorm来做实时消息处理,jstorm的输入输出均为kafka,jstorm实时处理结果用于索引的实时更新。2.相比storm,jstorm更加稳定,性能更高。3.运维和问题排查:-web监控页面对于把握整体实时消息处理很方便;
-spout和bolt是链式连接,一个节点有问题,会影响上游下游节点。碰到问题时,要排查整条链路各节点的状态,而不是只盯着出现问题的节点;
来自云栖网友观点:豪dennis
最爽的是Jstorm完全兼容storm的编程模型,内核全部使用Java来编写,除了内核使用Java编写这个优势之外,Jstorm对比storm在性能上也有一定的优势,此外它还提供了资源隔离和类似于Heron之类的反压力机制,所以能够更好的处理消息拥塞的这种情况
来自云栖网友观点:1298888942152031
我觉得Jstorm对比storm在性能上也有一定的优势,此外它还提供了资源隔离和类似于Heron之类的反压力机制,所以能够更好的处理消息拥塞的这种情况。
来自云栖网友观点:浮生递归
之前从日志里提取字段做统计分析的时候,并没有采用实时计算框架。所以稍微有点数据量,反应就非常慢,慢到半天出不来,客户也因此而非常不满意。知道了JStorm后,可以尝试这种高效的实施计算框架。而且除了统计分析外,还有这么多高频的应用场景,优势非常明显。期待投入时候后让客户有全新的体验。客户的口碑就是我们的竞争力。感谢楼主
原文链接





展开
收起
爵霸 2017-04-24 15:37:30 5447 0
0 条回答
写回答
取消 提交回答
问答排行榜
最热
最新

相关电子书

更多
基于Kubernates的流处理平台实践 ——Flink为例 立即下载
开发者专场-瓦力 探索实时计算新架构-Apache Flink 的云原生部署架构和实践最终版 立即下载
基于Apache Flink的平台化构建及运维优化经验 立即下载