![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
netty
文章平均质量分 61
菠萝-琪琪
这个作者很懒,什么都没留下…
展开
-
Flink 对于TCP背压的处理
当消费者的消费速率低于生产者的发送速率时,会造成背压,此时消费者无法从TCP缓存区中读取数据,因为它无法再从内存池中获取内存,从而造成TCP通道阻塞。生产者无法把数据发送出去,这就使生产者不再向缓存队列中写入数据,从而降低了生产速率。当消费者的消费速率提升且TCP通道不再阻塞时,生产者的发送速率又会得到提升,整个链路运行恢复正常。TCP的流量控制中有个非常重要的概念——TCP窗口。TCP窗口的大小是可变的,因此也叫滑动窗口。TCP窗口本质上就是描述接收方的TCP缓存区能接收多少数据的,发送方可根据这原创 2021-04-09 21:21:03 · 828 阅读 · 0 评论 -
Netty 自定义编码、解码器案例
Netty内置了很多编码、解码器,例如MsgPack、Protobuf,这些二进制编码器的性能都非常高,远远高于Java内置的序列化、反序列化的性能但是出于各种原因,我们有时候需要自定义编码、解码,一般做法都是将消息分为几段(消息头初始标记、消息体长度标识、消息校验Token、消息体内容),通过预定义的各个分段的长度直接获取进行匹配校验Netty也提供了各种扩展口给到上层应用自行扩展,下面就是一个Demo案例定义message类,消息的主类package netty.customco.原创 2021-04-07 22:17:08 · 850 阅读 · 0 评论