We use Netty because it is THE defacto-standard for asynchronous network communication in Java and it excels at the flexible pipeline design and the great thread architecture.
We use Netty for the communication between our servers (Spigot), servers and proxies (Spigot and BungeeCord) aswell as proxies und our global overseer-instance. Finally we also use it for the java-side of our website-overseer-communication.