微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

java并发有序响应缓冲区

如何解决java并发有序响应缓冲区

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

解决方法

以防万一有人也需要它,由于缺乏答案,我自己写了:

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

欢迎反馈:)

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。