Yeah, we don't have anything pre-existing that does something like that; it
gets into the specifics of your use-case. Making something yourself was
appropriate. I will say that the strategy used in
OrderedConcurrentOutputBuffer with the Buckets seems really clean.

On Thu, Apr 22, 2021 at 9:21 AM Piotr Morgwai Kotarbinski <[email protected]>
wrote:

> in case someone needs it also, I've written it myself due to lack of
> answers either here and on SO:
>
> https://github.com/morgwai/java-utils/blob/master/src/main/java/pl/morgwai/base/utils/OrderedConcurrentOutputBuffer.java
> feedback is welcome :)
> On Tuesday, April 20, 2021 at 11:09:59 PM UTC+7 Piotr Morgwai Kotarbinski
> wrote:
>
>> Hello
>> i have a stream of messages coming from a websocket or a grpc client. for
>> each message my service produces 0 or more reply messages. by default both
>> websocket endpoints and grpc request observers are guaranteed to be called
>> by maximum 1 thread concurrently, so my replies are sent in the same order
>> as requests. Now I want to dispatch request processing to other threads and
>> process them in parallel, but still keep the order. Therefore, I need some
>> "concurrent ordered response buffer", which will buffer replies to a given
>> request message until processing of previous requests is finished and
>> replies to them are sent (in order they were produced within each "request
>> bucket").
>>
>> I can develop such class myself, but it seems a common case, so I was
>> wondering if maybe such thing already exists (to not reinvent the wheel).
>> however I could not easily find anything on the web nor get any answer on
>> SO
>> <https://stackoverflow.com/questions/67174565/java-concurrent-ordered-response-buffer>
>> . does anyone knows about something like this?
>>
>> Thanks!
>>
> --
> You received this message because you are subscribed to the Google Groups "
> grpc.io" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/grpc-io/e7107eed-fa35-4b2e-8d5a-5754e0a37740n%40googlegroups.com
> <https://groups.google.com/d/msgid/grpc-io/e7107eed-fa35-4b2e-8d5a-5754e0a37740n%40googlegroups.com?utm_medium=email&utm_source=footer>
> .
>

-- 
You received this message because you are subscribed to the Google Groups 
"grpc.io" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/grpc-io/CA%2B4M1oM8z38Ot_Xg9gk%3Do5NN1zd5ey4jUHk6biYXCp0y5JrQwg%40mail.gmail.com.

Attachment: smime.p7s
Description: S/MIME Cryptographic Signature

Reply via email to