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

图片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内容资讯,并不代表本站观点及立场。若有侵权或异议,请联系我们处理。
即刻开启您的物联网之旅
即刻开启 您的物联网之旅
遇到问题了么?联系专属客户经理在线解答
遇到问题了么?联系专属客户经理在线解答