简体中文
简体中文
English
注册
登录开发者平台
解决方案
行业解决方案
提供从智慧客房、智慧前台到智慧运营等酒店全场景品牌赋能,推进酒店行业数智化变革
一站式智慧照明系统解决方案,赋能企业快速实现人因照明、节能减排的智能化照明升级
综合应用智能化信息,令楼宇具有智慧和生命力,提供投资合理、安全高效、舒适便利的使用空间
快速实现数字化智慧办公空间,有效实现企业增效、降本和节能。
为连锁型品牌商业门店提供完善的管理系统, 提升门店效率
提供从租控授权、租务运营到园区管理等全方位租住解决方案,驱动租住行业智慧转型
融合全屋智能、地产社区等行业场景能力,提供居住空间丰富的产品矩阵和智能体验
IoT 助力校园场景智能化转型, 提升管理效率
全方位赋能开发者实现多场景智慧节能管理解决方案
以 IoT 平台助力中小制造企业, 实现降本、提质、增效
借助丰富硬件生态,一站式构建安全可靠私有化智能平台
为你的业务场景提供全面的 AI 服务及 AI Copilot 开发方案
海量成熟方案,超低研发门槛,极速落地产品智能化
开发者
与志同道合的开发者和专家共同交流
从初创企业到全球领先企业,涂鸦开发者平台协助实现客户成功。
快速获取并体验优秀的开发者案例产品
服务与支持
生态合作
成为涂鸦服务商,接入涂鸦的另一个选择,帮助更多开发者更快实现智能化
智能互联标识
携手开发者生态合作伙伴联合创新,持续创造互联互通商业价值
聚焦产业变革, 推动人工智能产业发展
智联万物,商者无界
安全与合规
严格遵守国内外信息安全标准和行业要求
诚邀安全业界同仁共同打造和维护物联网健康生态
支持
提供产品智能化开发全链路的常见问答
7×24一对一客服咨询
技术指导、故障修复以及问题解决
关于我们
全球化云开发者平台
探索涂鸦的故事
了解涂鸦的全球视野
涂鸦智能-产品解决方案|行业解决方案|全球智能化平台
涂鸦诚聘全球精英
物联网关键技术:消息队列
形状
952

图片25图片25

消息队列MQ连接物联网与后端系统((业务应用,数据分析)

在大量设备接入物联网平台之后,会产生各种各样的事件和数据,为接收到后端的各种计算和存储服务。讯息队列可实现异步通讯、应用解藕、削峰平谷等功能,是物联网平台不可或缺的组成部分。

EMQ解决方案:IoT Broker直接对消息队列服务进行对接。

信息队列技术选择。

在传统的J2EE企业信息系统中,引入了消息队列MQ来实现异步消息机制,人们首先使用ActiveMQ。ApacheActiveMQ是由Apache软件基金会开发的JMS消息中间件(JMSProvider),一种纯Java程序。ActiveMQ历史悠久,有更多的历史,因此,现在并没有多少人使用它。

ActiveMQ模型:JMS1.1和J2EE1.4规范得到了充分的支持。

随后每个人都开始用RabbitMQ。RabbitMQ是一个开源的中间件,它实现了高级消息队列协议(AMQP),由爱立信发明的Erlang语言编写。最初RabbitMQ应用于金融领域,目前仍在因特网上广泛应用。

目前,RabbitMQ在因特网行业中仍有广泛的应用。

RabbitMQ实现机制比较复杂,不太适合高吞吐量的场景。许多公司会选择使用RocketMQ或Kafka来进行大量的数据处理。

RocketMQ最早是由阿里巴巴消息中间件团队开发和使用的产品,在2016年捐赠给了Apache基金会,成为Apache340个顶级开源项目之一。

RocketMQ最大的特点是支持事务类型消息,它能够保证消息发送和DB操作的最终一致性,并且可以支持大量的topic。但RocketMQ的社区并不大,用户数量比Kafka少了一点,其中不乏著名的公司,如滴滴出行就使用RocketMQ作为核心业务系统。

卡夫卡框架构成。

Kafka在大数据领域的实时计算、日志采集等场景中,已接近成为业界标准,社区活跃度很高,也非常适合应用于对事务需求不大的物联网场景。如果topic过多,则影响RocketMQ的吞吐量。

对成熟的消息队列产品进行选择,对于数据量较小的物联网系统,RabbitMQ可用于RocketMQ或Kafka。若要尝试新技术,那就考虑Pulsar的后浪吧。

普尔萨要把卡夫卡拍到沙滩上。

近年来,开放源码消息中间件Pulsar受到了广泛的关注。Pulsar类似于一个组合,它不仅能够支持像Kafka一样的高速流处理场景,而且支持标准消息队列模式,比如RabbitMQ。这样,在同一时间运行一个Pulsar系统,能够同时处理实时流和消息队列。

Pulsar实现了数据分发和存储分离,代理无状态,易于扩展。

分区

Kafka中的所有主题都是分区,因此可以提高吞吐量。对单个主题进行划分,可显著提高处理速度。

Pulsar还支持分区,但并非必需。使用Pulsar的多用户实例也能提高处理率。如果为了进一步提高性能,分区的确是必需的,那么分区也是可用的。

日志:

Kafka开发团队预见了日志对于实时数据交换系统的重要性。串行读写速度比随机读写速度高。但是,随着日志数量的增加,在单个服务器上保存所有日志已成为一项挑战。

Pulsar将日志分成几个部分,这样就可以避免大量复制日志。日志被BookKeeper分散到多个不同的服务器上。这就是说,日志没有保存在一个单独的服务器上,因此没有一个服务器会成为整个系统的瓶颈。

无状态

Kafka并非无状态,因为每个broker都包含了一个分区的所有日志,如果有一个broker宕机,并非任何一个broker都能代替其工作。

Pulsar体系结构中的数据分布和存储是相互独立的,而broker是无状态的。broker接收来自生产者的数据,然后向用户发送数据,但是这些数据保存在BookKeeper中。当工作量很大时,可以直接添加新代理。

另外,跨域复制是Pulsar的特色。Pulsar在设计的一开始就考虑到了这一特点,而且配置非常简单。有些基准测试结果显示,Pulsar能够在保持较低延迟的同时提供更高的吞吐量。

Pulsar提供许多类似Kafka的功能,例如跨域复制(PulsarFunction),Connector(PulsarIO)、基于SQL的主题查询(PulsarSQL)等,以及一些Kafka没有的功能,例如层次化存储和多租赁。

虽然Kafka和Pulsar都非常适合在物联网上使用,尽管现在Kafka仍然是主流,但是Pulsar未来能否取代Kafka,时间自会告诉我们答案。

免责声明:凡注明来源的文章均转自其它平台,目的在于传递有价值的AIoT内容资讯,并不代表本站观点及立场。若有侵权或异议,请联系我们处理。
即刻开启您的物联网之旅
即刻开启 您的物联网之旅
遇到问题了么?联系专属客户经理在线解答