干货来袭!spark开发用java还是scala

本文探讨了ActiveMQ、RabbitMQ、RocketMQ和Kafka四种消息中间件的特性,其中提到了RocketMQ因其高吞吐量、高可用性和消息可靠性而成为作者的首选。在Spark开发中,是否选择Java或Scala,文中并未直接给出结论,但提到了RocketMQ与Java系统的良好适配性。
摘要由CSDN通过智能技术生成

ActiveMQ

我们先看ActiveMQ。其实一般早些的项目需要引入消息中间件,都是使用的这个MQ,但是现在用的确实不多了,说白了就是有些过时了。我们去它的官网看一看,你会发现官网已经不活跃了,好久才会更新一次。

它的单机吞吐量是万级,一些小的项目已经够用了,但对于高并发的互联网项目完全不够看。

在高可用上,使用的主从架构的实现。

在消息可靠性上,有较低的概率会丢失数据。

综合以上,其实这个产品基本可以弃用掉了,我们完全可以使用RabbitMQ来代替它。

RabbitMQ

rabbitMQ出现后,国内大部分公司都从activeMQ切换到了rabbitMQ,基本代替了activeMQ的位置。它的社区还是很活跃的。

它的单机吞吐量也是万级,对于需要支持特别高的并发的情况,它是无法担当重任的。

在高可用上,它使用的是镜像集群模式,可以保证高可用。

在消息可靠性上,**它是可以保证数据不丢失的,**这也是它的一大优点。

同时它也支持一些消息中间件的高级功能,如:消息重试、死信队列等(后续文章会讲到)。

但是,它的开发语言是erlang,国内很少有人精通erlang,所以导致无法阅读源码。

对于大多数中小型公司,不需要面对技术上挑战的情况,使用它还是比较合适的。而对于一些BAT大型互联网公司,显然它就不合适了。

RocketMQ

评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值