Java NIO - 高性能服务器的 Reactor 设计模式
迄今为止,高性能网络编程都绕不开Reactor模式。很多著名的服务器软件或者中间件都是基于Reactor模式实现的。例如 Nginx、Netty、Redis。Doug Lea 在 《Scalable IO in Java》 中对Reactor模式的定义。Reactor模式由Reactor线程、Handlers处理器两大角色组成,两大角色的职责分别如下:
- Reactor 线程:负责响应IO事件,并且分发到 Handlers 处理器。
- Handlers 处理器:非阻塞的执行业务处理逻辑。