1.Netty的处理器可以分为两类:入站处理器和出战处理器

2.入站处理器顶层是ChannelInboundHandler,出战处理器顶层是ChannelOutboundHandler

3.数据处理时常用的编解码器都是处理器

4.编解码器:无论我们向网络中写入的什么类型,在网络传输中,都是以字节流的方式传输,将数据由原本的形式转换为字节流的操作称为编码(encode),将数据由字节流形式转换为原本的形式或其他格式的操作成为解码(decode)

5.编码:本质上是一种出战处理器;所以编码是一种ChannelOutboundHandler

6.解码:本质上是一种入站处理器;所以解码是一种ChannelInboundhandler

7.在netty中,编码器通常以xxxEncoder命名;解码器通常以xxxDecoder命名

关于netty编解码器的重要结论:

1. 无论编码器还是解码器,其所接收的的消息类型必须与待处理的参数类型一致,否则该编码器或解码器并不会被执行

2.在解码器进行解码时,一定要判断缓冲(bytebuf)中数据是否足够,否则会产生一些问题

Netty处理器重要概念的更多相关文章

  1. Netty的常用概念

    我们先来看一段代码: // Configure the server. EventLoopGroup bossGroup = new NioEventLoopGroup(1); EventLoopGr ...

  2. Netty的基本概念

    异步 等待它的同时你也可以做点别的事情 阻塞I/O 只能同时处理一个连接,要管理多个并发客户端,需要为每个新的客户端Socket创建一个新的Thread 使用Selector的非阻塞I/O class ...

  3. Android 基于Netty的消息推送方案之概念和工作原理(二)

    上一篇文章中我讲述了关于消息推送的方案以及一个基于Netty实现的一个简单的Hello World,为了更好的理解Hello World中的代码,今天我来讲解一下关于Netty中一些概念和工作原理的内 ...

  4. Netty(一):server启动流程解析

    netty作为一个被广泛应用的通信框架,有必要我们多了解一点. 实际上netty的几个重要的技术亮点: 1. reactor的线程模型; 2. 安全有效的nio非阻塞io模型应用; 3. pipeli ...

  5. Netty学习笔记-入门版

    目录 Netty学习笔记 前言 什么是Netty IO基础 概念说明 IO简单介绍 用户空间与内核空间 进程(Process) 线程(thread) 程序和进程 进程切换 进程阻塞 文件描述符 文件句 ...

  6. Netty学习四:Channel

    1. Channel Channel是Netty的核心概念之一,它是Netty网络通信的主体,由它负责同对端进行网络通信.注册和数据操作等功能. 1.1 工作原理 如上图所示: 一旦用户端连接成功,将 ...

  7. Netty In Action中国版 - 第二章:第一Netty程序

    本章介绍 获得Netty4最新的版本号 设置执行环境,以构建和执行netty程序 创建一个基于Netty的server和client 拦截和处理异常 编制和执行Nettyserver和client 本 ...

  8. MyBatis 源码分析——类型处理器

    官网上面讲到:无论是 MyBatis 在预处理语句(PreparedStatement)中设置一个参数时,还是从结果集中取出一个值时, 都会用类型处理器将获取的值以合适的方式转换成 Java 类型.那 ...

  9. Netty学习路线

    预研时间170517-170519 投入时间:约10h 理解度:入门①前置基础:了解基本网络协议和通信方式[图解HTTP]http://download.csdn.net/detail/niehanm ...

随机推荐

  1. maven解决无法从远程仓库获取ojdbc问题

    原因 Oracle 的 ojdbc.jar 是收费的,Maven 中央库中实际上没有此资源 解决方法 手动下载相应的jar,然后将其安装到本地仓库.具体操作如下: 1\先去下载相关的jar包或者驱动 ...

  2. js仓库。。。

    <script type="text/javascript" src="//ra.revolvermaps.com/0/0/8.js?i=0ln1fndtptz&a ...

  3. Mybatis入门简版(二)

    一.Dao层开发的方式 以前dao层开发比较繁琐,写了接口还得写实现类,实际上用了Mybatis之后写实现类非常重复,都是重复的代码.那么此时改成另外一种简单形式. 遵循以下四个原则(名称.形参.返回 ...

  4. 经典的Redis的主从复制搭建

    ##### 配置服务器   1).打开redis.conf文件修改 bind 指定的ip地址: ![image](https://img2018.cnblogs.com/blog/1334966/20 ...

  5. Echart:前端很好的数据图表展现工具+demo

    官网:  http://echarts.baidu.com/index.html 通过一个简单的小Demo介绍echart的使用:demo均亲测可以运行 demo1: 1.新建一个echarts.ht ...

  6. wait,notify,notifyAll详细介绍

    https://www.cnblogs.com/pangyang/articles/5916349.html

  7. TCP Traffic Analyzer

    TCP Traffic Analyzer 工具yahoo 发布的一款开源网络分析工具,可以分析网络应用在服务器端与客户端之间的运行状态Yconalyzer保持与tcpdump兼容,两者生成的抓取文件能 ...

  8. 常用函数-String

    /************************************************************************ 函数功能:将字符串中str的old_value子字符 ...

  9. 3. Rsync-远程同步(下)-企业案例

    已知3台服务器主机名分别为web01.backup .nfs主机信息见下表: 角色 外网IP(NAT) 内网IP(LAN) 主机名 WEB eth0:10.0.0.7 eth1:172.16.1.7 ...

  10. 百万年薪python之路 -- 列表

    1.列表(list)-- list关键字 列表是python的基础数据类型之一,有顺序,可以切片方便取值,它是以[ ]括起来, 每个元素用' , '隔开而且可以存放各种数据类型(字符串,数字,布尔值, ...