【问题标题】:Mutex for websocket in spring boot春季启动中websocket的互斥锁
【发布时间】:2017-11-08 11:00:37
【问题描述】:

我有一个问题,我不知道要搜索什么。 我有一个 spring boot 应用程序,它通过带有 stomp javascript 客户端的 web socket 广播消息。问题是我是否可以在消息发送时锁定消息,因为我不希望任何人同时发送另一条消息。我想做的系统就像一个红绿灯。 如果你能给我一个例子或寻找什么。

【问题讨论】:

  • 可能你会想看看像 Kafka 等消息队列系统。

标签: java spring-boot websocket stomp spring-websocket


【解决方案1】:

您应该使用synchronized 关键字并等待客户端响应。 synchronized 关键字确保只有一个线程可以同时执行该方法。而且您需要客户端响应,因为您可以按两秒间隔顺序发送两条消息,但您的客户端会同时收到它们。响应可能是一些虚拟的 ok 消息。

public class Traffic {
    synchronized void Send() {
        // write message to websocket
        // read response from websocket 
    }
}

【讨论】:

  • 同步方法应该在控制器哪里或者websocket配置上?
  • 控制器上的@duricuvlad
猜你喜欢
  • 1970-01-01
  • 2018-05-23
  • 2020-02-02
  • 2019-05-20
  • 1970-01-01
  • 1970-01-01
  • 2022-12-16
  • 1970-01-01
  • 2017-09-11
相关资源
最近更新 更多