云服务器价格_云数据库_云主机【优惠】最新活动-搜集站云资讯

微软云_重庆企业网站建设解决方案_怎么申请

小七 141 0

什么是企业消息传递?为什么它很重要?

发布/订阅系统从80年代末开始出现[1],像MQTT这样的流行协议从1999年开始出现[2]。但是,它们在PaaS架构和云计算中变得越来越突出的原因是,超连接、大数据、物联网和超规模计算等宏观数字转型趋势。这些宏观趋势意味着有更多的信息正在生成、传递和最终需要处理。

2013年全球数据总量为4.4 zettabytes。到2020年,这一数字将急剧上升至44泽塔比特。从这个角度来看,一个zettabyte相当于44万亿千兆字节。[3]

当然,这些引用的数据中有很多是以视频、照片和社交媒体等消费者格式生成的,但其中一些数据是在以企业为中心的场景中生成的。思科在最近的一份云指数报告中估计,到2018年,物联网数据将开始每年产生400 zettabytes。[4]思科引用了波音787飞机(每小时飞行产生40TB的数据)或力拓矿业公司(Rio Tinto mining operation)每分钟产生高达2.4TB的数据等用例,作为商业世界产生这些数据的例子这么多的数据

为什么对这些新的数据源有如此大的需求?井数据被许多企业视为一座金矿,用于提取见解、改进决策、促进结构化响应和敏捷操作。物联网还使公司能够整合其物理和数字世界,无论是在B2B、B2C还是B2X中运营。通过更多的数据和实时(在某些情况下是预测性的)分析,公司可以更快、更准确地做出决策,简化流程,并最终增加收入或降低成本。由于新的市场进入者和颠覆性的竞争对手,企业也被迫进入这些创新领域。企业也在寻求扩大业务规模,同时提供个性化或独特的体验。

企业信息是如何工作的?

发布/子系统允许通信系统松散耦合。通常,发布者将消息发布给中介代理,中介代理依次过滤、存储(可能在队列中排列优先级)并将消息转发给订阅系统。这种解耦方法使程序之间的通信更加容易,因为每个环境只需要了解消息格式和协议。这最终意味着,利用发布/订阅体系结构的公司更有可能享受可扩展的健壮通信层,该层确保不同的系统保持同步,并能够准确及时地处理从内部和外部系统接收(或发送)的前所未有的数据量有多种协议可供选择。上图试图简单地说明何时应该考虑哪种协议(基本目的是什么)。[5]

DDS可以使用或不使用MessageBroker来实现,因为它具有复杂的服务质量(能够保证交付)。它以数据为中心(而不是以消息为中心),是一个可扩展性极强的工业级系统。不过,安全元素还在测试阶段。DDS通常用于不可接受的中断、以毫秒为单位测量性能以及相关应用程序或数据值的扩展的情况。

MQTT主要用于需要极小占用空间和需要最小化电信费用的物联网场景。通信是通过TCP/IP进行的,可以支持最多一次、至少一次和恰好一次(pub/sub)。通常,涉及大量设备,并且存在最小的对等交互。总之,一个很好的数据收集协议。

CoAP也适用于小型设备用例,只有这次使用REST(HTTP)。CoAP不保证传递,但您可以用确认请求(请求/响应)标记消息。消息可以是单播或多播。类似于MQTT的用例,但不需要保证交付。

AMQP用于服务器到服务器的发布/订阅消息传递。它支持复杂的基于信用的流控制,以避免瓶颈、队列、事务、通过防火墙获取消息的多路复用、通过Kerberos的可信实体身份验证。它在TCP/IP之上有自己的链路和传输层。消息是分层的。AMQP的典型用例是系统之间的特定数据传输(共享工作)和不可接受的数据丢失。

XMPP是基于XML的协议。数据可以通过持久的XML或通过TCP连接的流发送。消息传递模式可以是pub/sub(通过扩展)或点对点。与CoAP类似,没有保证交付,但可以通过扩展。XMPP在连接点最少且速度/CPU使用率不重要的地方表现出色。一个典型的用例是"始终开启"

消息传递最佳实践

消息代理可以传递大量消息,但实际上,在单个消息中传输千兆字节的数据并不是最有效的消息传递方法,并且可能会产生副作用,如触发连接控制、阻塞其他客户端、耗尽资源,等等。因此,在设计来自发布的数据时,请确保底层消息很小。

消息传递基础结构设计为通过在多个系统之间异步交换消息来连接多个系统。主要目的是在不同系统的发送者和使用者之间尽可能高效地发送消息。如果要存储数据,请使用数据库,企业交流软件,而不是队列。

如何使用企业消息传递?