Android 基于Netty的消息推送方案之概念和工作原理

枕上从妨一夜睡,灯前读尽十年诗。这篇文章主要讲述Android 基于Netty的消息推送方案之概念和工作原理相关的知识,希望能为你提供帮助。
上一篇文章中我讲述了关于消息推送的方案以及一个基于Netty实现的一个简单的Hello World。为了更好的理解Hello World中的代码,今天我来解说一下关于Netty中一些概念和工作原理的内容,假设你认为本篇文章有些枯燥。请先去阅读《android 基于Netty的消息推送方案之Hello World(一)》
ChannelEvent Netty是基于事件驱动的,就是我们上文提到的。发生什么事。就通知"有关部门"。
所以。不难理解。我们自己的业务代码中,一定有跟这些事件相关的处理。在例子代码,我们处理的事件,就是channelConnected。
以后。我们还会处理很多其它的事件。


Android 基于Netty的消息推送方案之概念和工作原理

文章图片


ChannelPipeline管道,传输途径。它控制ChannelEvent事件分发和传递的。事件在管道中流转。就是用这个ChannelPipeline处理的。
比方:开发事件。先给A设计。然后给B开发。一个流转图。希望能给你更直观的感觉。

Android 基于Netty的消息推送方案之概念和工作原理

文章图片


管道流转图:

Android 基于Netty的消息推送方案之概念和工作原理

文章图片



ChannelHandler刚说Pipeline负责把事件分发到对应的网站。网站在Netty里就是指ChannelHandler。事件到了ChannelHandler这里,就要被详细的进行处理了,我们的例子代码里,实现的就是这样一个处理事件的“网站”,也就是说,你自己的业务逻辑一般都是从这里開始的。
Channelchannel,可以告诉你当前通道的状态,是连同还是关闭。获取通道相关的配置信息。得到Pipeline等。是一些全局的信息。Channel自然是由ChannelFactory产生的。Channel的实现类型。决定了你这个通道是同步的还是异步的(nio)。比如,我们例子里用的是NioserverSocketChannel。
【Android 基于Netty的消息推送方案之概念和工作原理】


Android 基于Netty的消息推送方案之概念和工作原理

文章图片


假设你有兴趣,请继续了解Netty《Android 基于Netty的消息推送方案之字符串的接收和发送(三)》















    推荐阅读