websocket API对中间件的优势是什么?

websocket API对中间件的优势是什么?,websocket,middleware,hivemq,Websocket,Middleware,Hivemq,某些中间件以本机方式支持WebSocket,例如HiveMQ:。使用websockets API作为中间件的第一类客户端,而不是通过支持特定语言API的中间服务器路由请求,开发人员有哪些优势 客户端->中间件 vs 客户端->服务器->中间件 例如,我们可以认为跳过中间服务器将降低带宽成本,而不需要开发人员编写额外的层,原生SSL websockets支持 通过提供WebSocket对中间件的支持,不仅可以为开发人员,还可以为任何一方提供哪些其他优势?您获得的主要优势是简单性,对于HiveMQ,

某些中间件以本机方式支持WebSocket,例如HiveMQ:。使用websockets API作为中间件的第一类客户端,而不是通过支持特定语言API的中间服务器路由请求,开发人员有哪些优势

客户端->中间件

vs

客户端->服务器->中间件

例如,我们可以认为跳过中间服务器将降低带宽成本,而不需要开发人员编写额外的层,原生SSL websockets支持


通过提供WebSocket对中间件的支持,不仅可以为开发人员,还可以为任何一方提供哪些其他优势?

您获得的主要优势是简单性,对于HiveMQ,可伸缩性

让我解释一下这些优点:

简单 对于HiveMQ,您只需启动服务器就可以了。在WebSocket上使用MQTT库的所有web应用程序都可以连接到服务器,而不知道是否使用WebSocket作为传输。对于HiveMQ本身,它只是另一个MQTT客户机。因此,客户机是通过WebSocket连接还是通过经典TCP连接并不重要。我想你已经提到了你问题中的其他论点。当然,最后但并非最不重要的一点是,如果运营人员少维护一个系统(在您的案例中是“服务器”),他们会感谢您

可伸缩性 像HiveMQ这样的软件是非常可扩展的,它可以处理多达数十万个并发连接的客户端。附加层(“您的情况中的服务器”)很有可能会引入瓶颈。此外,如果您可以扔掉不需要的层,那么使用硬件或软件负载平衡器进行负载平衡会变得容易得多。一般来说,如果您不需要这些附加层(这些层不是可重用于其他应用程序的服务,如微服务),那么系统的体系结构将变得容易得多


最后但并非最不重要的一点是,HiveMQ本身通常与经典中间件/ESB集成。这意味着,人们编写自定义插件,将HiveMQ集成到现有中间件中。JMS或webservice调用(REST、SOAP)通常用于实现这一点

对这个答案持保留态度,因为我参与了开发HiveMQ:-)