優勢

使用 STOMP 作為子協議,Spring Framework 和 Spring Security 可以提供比使用原生 WebSockets 更豐富的程式設計模型。這與 HTTP 相對於原生 TCP 的作用相似,它使得 Spring MVC 和其他 Web 框架能夠提供豐富的功能。以下是其優勢列表:

  • 無需發明自定義的訊息協議和訊息格式。

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

  • 您可以(可選地)使用訊息 Broker(如 RabbitMQ、ActiveMQ 等)來管理訂閱和廣播訊息。

  • 應用邏輯可以組織在任意數量的 @Controller 例項中,訊息可以根據 STOMP destination header 路由到它們,而無需使用單個 WebSocketHandler 處理給定連線的原生 WebSocket 訊息。

  • 您可以使用 Spring Security 根據 STOMP destination 和訊息型別來保護訊息。