It utilise Flow to dispatch many concurrent requests
We use it to load test or Phoenix API
The specifics is that 10-300 seconds! response is normal, but we need to handle a lot of them at the same time
For some reason about 300 of 500 requests almost immediately return with {:error, %HTTPoison.Error{id: nil, reason: :closed}} with none log entries on Phoenix side in development environment
The Ruby production server (which we want to replace) fails only for 10 responses
HTTPoison uses connection pool, I think the above error is due to your pool size, once all connections with the pool are use, the above error is inevitable.
How about disabling connection pooling - open a connection on the fly; I understand the performance gain when using a pool(tcp handshake etc) but to help us isolate the problem. Let’s see if the error will be cleared then we can focus on the pool or a different area. My two cents sir.
We have to look into the connection pool issue and see what can do differently to avoid the error, I’ve seen a lot discussions on the connection pool. If you are able to look into it, let me know. Thanks a lot.