currently SocketServer basically does this:

      while (true) {
          new Connection(channel.accept());

      }



so it faithfully accepts any incoming connection and creates a worker thread
processing the request.

I think this is prone to DOS attacks, or ungraceful failure in the case of
heavy traffic.

if we use a limited thread pool inside Connection() implementation, we can
reject connections if we are too heavily loaded.

thought it's basically a trivial thing to implement, but considering this is
a very common use case, is it worthwhile to put
such an implementation into the avro source?

Thanks
Yang

Reply via email to