Benefits

将STOMP用作子协议可以让Spring Framework和Spring Security提供一个更丰富的编程模型,而不是使用原始的WebSocket。同样可以将HTTP与原始TCP进行比较,以及它如何让Spring MVC和其他Web框架提供更丰富的功能。以下是优势列表:

  • 无需发明自定义消息协议和消息格式。

  • STOMP 客户端可用,包括 Spring Framework 中的 Java client

  • 你可以(选择性地)使用消息代理(例如 RabbitMQ、ActiveMQ 等)来管理订阅和广播消息。

  • 应用程序逻辑可以在任意数量的 `@Controller`实例中组织,消息可以基于 STOMP 目标头路由到它们,而不是使用单个 `WebSocketHandler`处理给定连接的原始 WebSocket 消息。

  • 你可以使用 Spring Security 根据 STOMP 目标和消息类型保护消息。