Netty—–异步和事件驱动
- Netty是什么
Netty是一个Java语言编写的用于创建高性能网络通讯程序的框架
- 为什么不直接使用java语言编写网络程序
我们可以先看下面一段比较经典的网络通讯的流程代码:
1 |
|
以上代码只能处理一个客户端连接的情况,如果要多个客户端同时通讯,需要为每个请求单独分配一个线程去处理请求
这种方案存在的问题:
- 处理请求的线程可能会在IO过程中可能会阻塞,大量线程阻塞的话会造成资源浪费
- 创建线程需要分配内存
- 线程切换会占用性能开销,线程数越多,性能开销越大
Hello Word
Netty是一个Java语言编写的用于创建高性能网络通讯程序的框架
我们可以先看下面一段比较经典的网络通讯的流程代码:
1 |
|
以上代码只能处理一个客户端连接的情况,如果要多个客户端同时通讯,需要为每个请求单独分配一个线程去处理请求
这种方案存在的问题: