内容简介:基于netty的协议解析
前言(待整理)
我们决定使用netty作为通讯框架时,必须要考虑如何将netty与协议结合的问题
协议的复杂性对使用netty的影响
简单协议,协议字段完全固定,并且协议的目的就是简单的传输数据。
model | 编解码 | ||
---|---|---|---|
业务层 | 业务model | 继承message,实现encode、decode | 调用transport层提供的send接口 |
transport层 | message | 抽象方法 encode、decode | transport 只是实现message的收发 |
复杂协议
-
大部分协议分为header和data部分,data部分经常随着header部分变化,比如http协议
transfer-encoding:chunked
或者multipart - 需要复杂的初始化,比如ssl,在工作之前,要进行ssl握手。
http协议
从代码上看
- 协议的encoder/decoder上直接继承MessageToMessageEncoder/ByteToMessageDecoder
- 定义一系列协议对应的model
netty与ssl 的整合
很多公司要对外提供开放接口,比如支付宝的支付接口。开放接口通常对性能和安全性要求极高,此时netty 和 ssl就是一个比较好的选择。
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:- 每秒解析千兆字节的 JSON 解析器开源,秒杀一大波解析器!
- 注册中心 Eureka 源码解析 —— EndPoint 与 解析器
- 新一代Json解析库Moshi源码解析
- mybatis源码配置文件解析之三:解析typeAliases标签
- MySQL内核源码解读-SQL解析之解析器浅析
- Laravel 核心——IoC 服务容器源码解析(服务器解析)
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
500 Lines or Less
Amy Brown、Michael DiBernardo / 2016-6-28 / USD 35.00
This book provides you with the chance to study how 26 experienced programmers think when they are building something new. The programs you will read about in this book were all written from scratch t......一起来看看 《500 Lines or Less》 这本书的介绍吧!