netty 里的设计模式

 Reactor 模式的使用

 
 

Netty 底层事件的收发机制是多线程的 Reactor 模式的应用。 reactor设计模式,是一种基于事件驱动的设计模式。Reactor框架是ACE各个框架中最基础的一个框架,其他框架都或多或少地用到了Reactor框架。 
      在事件驱动的应用中,将一个或多个客户的服务请求分离(demultiplex)和调度(dispatch)给应用程序。在事件驱动的应用中,同步地、有序地处理同时接收的多个服务请求。 
      reactor模式与外观模式有点像。不过,观察者模式与单个事件源关联,而反应器模式则与多个事件源关联 。当一个主体发生改变时,所有依属体都得到通知。

2. 责任链设计模式

pipeline 上事件的传播

责任链模式是行为模式的一种,它将需要触发的Handler组成一条链,
发送者将请求发给链的第一个接收者,并且沿着这条链传递,直到有一个Handler来处理它或者直到最后也没有对象处理而留在链末尾端;
责任连模式的重点是在链上,由一条链去处理相似的请求,在链中决定谁来处理这个请求。

责任链模式的角色:

  • 抽象处理者角色(Handler):该角色对请求进行抽象处理,并定义一个方法和返回下一个处理的引用。
  • 具体处理者(Concrete Handler)角色:该角色接到请求后,可以选择处理掉,或则将请求传给下一个处理则。
    由于具体处理者持有对下一个处理者的引用,因此,如果需要,可以访问下一个处理者。
  • 客户端:事件的发起者。

猜你喜欢

转载自blog.csdn.net/seaReal1/article/details/80251289