title: How to process one request at a time on the same TCP connection (Channel)?
body: <p>We have a Netty server using <code>NioServerSocketChannel</code> and <code>HttpServerCodec</code>. We have observed a bad client sending multiple requests on the same TCP connection (same Channel &amp; ChannelPipeline) without waiting for a response. This bad client can be recreated using Netty client and doing multiple <code>ctx.write()</code>s with a <code>ctx.flush()</code> at the very end to send all the requests at once.</p>
  <p>The result is Netty processes the requests at the same time in the same pipeline. Is there any way to have Netty process the requests one-at-a-time, waiting for a response to be sent back or some failure condition before trying to process the next request? Or will this require custom logic on our end to implement this?</p>
  <p>We have Channel attributes set per request and the pipeline also changes depending on the request, so we cannot handle multiple requests at the same time on the same Channel.</p>