No, you don't need one thread per device. If you have 1000 threads and one CPU then you will wait much much much much much longer than when handling all connections in one thread. This is a common legend that you need one thread per connection to be able to handle multiple clients and here we fight very hard to counter this riddiculous belief.