【问题标题】:java concurrent ordered response bufferjava并发有序响应缓冲区
【发布时间】:2021-07-14 09:24:49
【问题描述】:

我有来自 websocket 或 grpc 客户端的消息流。对于每条消息,我的服务会生成 0 条或更多条回复消息。默认情况下,websocket 端点和 grpc 请求观察者都保证被最多 1 个线程同时调用,所以我的回复以与请求相同的顺序发送。现在我想将请求处理分派给其他线程并并行处理,但仍然保持顺序。因此,我需要一些“并发有序响应缓冲区”,它将缓冲对给定请求消息的回复,直到完成对先前请求的处理并发送对它们的回复(按顺序在每个“请求桶”中生成它们)。
我可以自己开发这样的课程,但这似乎是一个常见的情况,所以我想知道这样的事情是否已经存在(不要重新发明轮子)。但是我在网上找不到任何东西:有人知道这样的事情吗?
谢谢!

【问题讨论】:

    标签: java concurrency java.util.concurrent grpc-java java-websocket


    【解决方案1】:

    如果有人也需要它,由于缺乏答案,我自己写了它:

    https://github.com/morgwai/java-utils/blob/master/src/main/java/pl/morgwai/base/utils/OrderedConcurrentOutputBuffer.java

    欢迎反馈:)

    【讨论】:

      猜你喜欢
      • 2019-12-03
      • 2020-04-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-04-12
      • 1970-01-01
      • 2017-11-02
      • 2013-06-17
      相关资源
      最近更新 更多