我正在开发一个使用 SOA 风格实现的实时应用程序(读取通过一些消息传递协议 - JMS、MQ 或 HTTP 连接的松散耦合组件)。
设计此系统的架构师选择使用 JMS 来连接组件。该系统是实时的,因此如果一个组件发生故障(事务将简单地超时),则无需将消息排队。此外,不需要保证交付或回滚。
在这种情况下,与 HTTP Web 服务(速度、资源占用等)相比,使用 JMS 有什么好处吗?
我在想的一件事是,由于 JMS 方法要求我们设置线程池大小(侦听 JMS 主题/队列的组件数量),因此 HTTP 服务不是更合适,因为这种额外的配置不是需要(为每个 HTTP 请求创建一个新线程,使应用程序可扩展到“无限”数量的请求,直到服务器耗尽资源)。
我错过了什么吗?