I have a service (call Service A) that uses Akka Server to process incoming requests. I also have a third-party application (Service B) that provides several web services. The purpose of service A is to transform client requests, call one or more web services of service B, combine / transform the results, and return them to the client.
I use Actors for some parts, and just the Future for others. To call service B, I use the Akka HTTP client.
Http.get(actorSystem).singleRequest(HttpRequest.create() .withUri("http://127.0.0.1:8082/test"), materializer) .onComplete(...)
The problem is that a new thread is created for each service request, and if there are several simultaneous connections, akka.stream.OverflowStrategy$Fail$BufferOverflowException: Exceeded configured max-open-requests value of [32] error
I already asked this question and received an offer to use a single thread. How to call Akka HTTP client for several requests (10k - 100k)?
While it works for a batch of requests coming from one place, I donβt know how to use one stream from all my parallel request handlers.
What is the correct "Akka-way" for this?
relgames
source share