大家好,今天小编关注到一个比较有意思的话题,就是关于rabbitmq交换机和路由器的问题,于是小编就整理了2个相关介绍rabbitmq交换机和路由器的解答,让我们一起看看吧。
mqtt协议和rabbitmq的区别?
mqtt释义:
消息队列遥测传输(Message Queuing Telemetry Transport)
例句:
Subscribing and publishing to MQTT topics.
订阅并发布到MQTT主题。
rabbitmq释义:
rabbitmq
例句:
Now all you need to do is to start the RabbitMQ server 14.
mqtt:一种通信协议,类似人类交谈中的汉语、英语、俄语中的一种语言规范
MQ:一种通信通道,也叫消息队列,类似人类交谈中的用电话、email、微信的一种通信方式
RabbitMQ、ZeroMQ和Kafka是一个层级的东西吗?
RabbitMQ、ZeroMQ和Kafka是一个层级的东西么?这个还真心不清楚,对于RabbitMQ和Kafka在项目开发中或多或少使用过,而ZeroMQ之前都没有听说过,更何谈了解使用呢?接下来我就简单说说我对RabbitMQ和Kafka的认识,以及相关的使用场景。
先来说说RabbitMQ,这个使用的业务场景比较广泛,所有传统意义上的消息队列解耦的情况几乎都可以用RabbitMQ来解决。记得之前做用户登录的活跃人次统计时,由于初期的设计不支持这种报表查询,而且报表的定制特性不适合通过基础框架来做开发,随后的方案就是通过解析登录日志文件来生成用户的登录记录,然后通过RabbitMQ将解析完成的记录发给做报表的团队,完成任务间的协同开发。定时任务解析、RabbitMQ解耦,较为从容的完成了月登录人次的统计,是应用解耦使用的典型场景。经过实践,RabbitMQ在三个比较典型的场景中使用较多,即异步处理、应用解耦、流量削峰。
再来说说Kafka,Kafka设计的初衷就是处理日志的,可以看做是一个日志系统,针对性很强。其典型的应用场景是用户访问日志的存储和使用,结合storm流组件进行访问日志、点击流日志的实时流量,以及其他类似的业务场景。典型的使用场景有:日志收集、消息系统、用户活动跟踪、运营指标、流式处理等。kafka的特性如下:
综合考虑,RabbitMq比kafka的对比如下:RabbitMq比Kafka成熟,在可用性上,稳定性上,可靠性上,RabbitMq超过Kafka;Kafka设计的初衷就是处理日志的,可以看做是一个日志系统,针对性很强,所以它并没有具备一个成熟MQ应该具备的特性;Kafka的性能(吞吐量、tps)比RabbitMq要强,两者在这方面没有可比性。
我曾经使用过RabbitMQ和正在使用kafka,姑且说下!
RabbitMQ和kafka都是分布式消息中间件系统!作为生产者和消费者的解耦合组件,保证服务之间的通信行为!
但是RabbitMQ主要的侧重点为broker,希望提供生产者和消费者之间消息传递的良好保证和消息数据的持久化!而kafka核心点是为生产者的大量数据提供支持,支持在线消费者和可能挂掉的消费者,在尽量低延迟的情况下发送消息!
都能对消息数据进行持久化,都实现了producer和comsumer之间的解耦,都拥有超高的吞吐量和稳定性!
所以,可以把rabbitMQ和kafka看做一个层级的东西!
而zeroMQ是一个十分轻量级的消息系统,在高吞吐量和低延迟方面性能更优,但是zeroMQ并不实现生产者和消费者之间的解耦合,而且zeroMQ的使用也十分困难,并不具备组件化,服务化的标准,需要自己实现socket等,同时,zeroMQ并不支持持久化消息数据,虽然性能高,但是消息丢失带来的影响也是不可估量的!
所以zeroMQ并不是严格的消息中间件系统!不过性能,吞吐量,实时性却是最高的!
关于kafka,rabbitmq的使用有需要的童鞋可以进一步交流,更多的技术分享,敬请关注。。。
到此,以上就是小编对于rabbitmq交换机和路由器的问题就介绍到这了,希望介绍关于rabbitmq交换机和路由器的2点解答对大家有用。