As we had known, If we want to use traditional IO to construct server, it must block somewhere, so we had to use loop or one thread one socket mode, So nio seem it is better
Some advantages of the NIO.2 API over the legacy java.io.File class for working with files:
java.io.File
For specific use cases and more details, you can see this article