前言
即将结束的2018年,准备迎接全新的2019年,在此祝大家新年快乐、工作事事顺心、更上一层楼。在2018年里,去了想去的城市,找到了一份心仪的工作,坚持做自己想做的事情。在这里想真诚的和自己说:在2018年里,你已经做的很好了,希望能在新的一年2019,再接再厉。
前一段时间里,一直都在研究Netty3源码,学习代码设计中的高内聚、低耦合,复用和模块化。将精华如何应用到工作上。 以下属于理论性,后期会通过实际代码和理论相结合进行分析。
Reactor 模式
事件驱动的模式,由主动变被动,原来是自己主动去询问事件是否准备就绪,或是如果未就绪就阻塞线程。还有一种是被动的,当有就绪的事件那么就主动通知我。
什么是事件?
事件可以理解为,我们平时所说的将要发生或者正在发送的事情,所具有:不知道什么时候发生,但一定会发生,具有未知性和确定性。
下面会结合Netty去理解Reactor模式在其中的应用
Reactor 简单结构
图-reactor_simple
输入多个事件源,通过多路复用器进行对事件监听,当事件就绪时就会根据事件类型分发给不同的Request Handler(Event Handler)进行处理。
其中 Service Handler由 Initiation Dispatch