Netty

1.什么应用场景下选择RPC、HTTP、MQ与Netty?


RPC:系统间即时访问、同步服务调用
HTTP :外部接口API提供、非高并发场景、非大数据报文传输
MQ :微服务之间解耦,流量削峰
Netty:底层基础通信、数据传输、数据同步
 

2.Netty技术选型与核心浅析

https://www.cnblogs.com/crazymakercircle/p/9998643.html

Netty的基础核心点

  • EventLoop、Reactor 模型
  • Pipeline事件传播
  • Netty的ChannelHandler
  • Netty的Buffer
     

3.Netty TCP拆包粘包问题的处理

 原因:

应用程序write写入的字节大小大于套接口发送缓冲区的大小,进行MSS大小的TCP分段、以太网帧的payload大于MTU进行IP分片等

三种处理:

  1. 消息定长,例如每个报文的大小固定为200个字节,如果不够,空位补空格;
  2. 在包尾部增加特殊字符进行分割,例如加回车等;
  3. 消息分为消息头和消息体,在消息头中包含表示消息总长度的字段,然后进行业务处理;

4.Netty的编解码技术

  1. Netty编解码技术,主流序列化框架
  2. JBoss的Marshalling、MessagePack框 架
  3. Google的Protobuf,以及基于Protobuf的Kyro
  4. 自定义协议栈
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值