I have not gone through the code detail of node.js .
But, going through some research about thread in Node.js, I found that it has single thread for accepting connection from multiple clients.
When connected with client it fires connection events and listens for another client and work fully in asynchronous style and rest operation of client request is performed from thread pool and result is sent back to main thread(Thread that accepts connection) via callback.
Like wise in Java NIO also ServerSocketChannel,SocketChannel can be set in non-blocking mode and with selector single thread can monitor multiple channels. So, using NIO ServerSocketChannel,SocketChannel also from single thread the connection can be managed asynchronously for multiple clients
So, is the NIO's non-blocking mode and node.js asynchronous with single thread follows the same pattern for concept of single thread? As both say they perform on single thread.