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.
smime.p7s
Description: S/MIME Cryptographic Signature
