Hi,
I'm looking for some guidance on implementing HTTP client side connection pooling. I have the basics of this working, but am uncertain about handling connection termination by the server while idle.
I'm essentially using ChannelPoolMap and the default IS_ACTIVE health check on acquire and release. What I'm seeing with _some_ servers is that an idle connection is being reported as isActive() when acquired, but immediately goes inactive after performing the first write to it (i.e. effectively failing the write).
When channels are being returned to the pool in my case, they have autoRead = false. Is this what could be causing the channel to report as active until there is a write? If so, why could it be only with some servers? Is it better practice to enable auto read before returning a channel to the pool?
Thanks in advance,
Luke Daley.