[目录]1.说明什么是高性能。 2. Netty实现高性能的方法3. Netty网络程序优化4 .典型应用: API网关5 .自行实现API网关6 .第5课总结回顾与工作实践1 .高性能高同时高直通
响应时间:用户角度
延迟时间:业务处理时间
缺点:系统复杂性建设维护成本故障的破坏性
应对措施:容量爆炸半径工程积累与改进
2 .网络茶概述
从事件处理机制到Reactor模型的事件驱动
Reactor - Netty NIO分为两个部分: Boss连接处理和工作器请求处理
Netty的工作原理
主要对象Bootstrap:启动线程并打开套接字
事件触发组
事件环路
套接字通道:连接
通道初始化器:初始化
通道pipeline :处理器链
通道处理程序:处理器
3.Netty网络程序优化了ByteToMessageDecoder提供的一些常见实现类。
FixedLengthFrameDecoder :定长协议解码器。 指定固定字节数计算完整的消息LineBasedFrameDecoder :以行分隔的解码器。 n或r 遇到n时,被视为完整消息delimiterbasedframedecodecoder的分隔符: LengthFieldBasedFrameDecoder :自行指定长度编解码器,并以标头/消息文体jsonobjectdecoder :可以分为JSON格式解码器,如果检测到匹配数量的“{”、“}”或“[”,则将其视为完整
Nagle和TCP_NODELAY优化条件:
缓冲区超时MTU :最大传输单元|通常为1500字节
MSS: Maxitum Segment Size最大段大小|通常为1460字节
连接优化(握手4次) )。
缩短等待时间
复用参数
不要阻止Netty优化事件loop系统参数优化
ulimit-a/proc/sys/net/IP v4/TCP _ fin _ time out,TcpTimedWaitDelay缓冲区优化
so _ rcvbuf/so _ snd buf/so _ backlog/reuse XXX心率周期优化
心跳机制、断线重新连接内存和字节缓冲器优化
DirectBuffer和HeapBuffer以及其他优化的ioratiowatermarktrafficshaping (4.典型的网关结构和功能?分类:业务网关(Nginx )和业务网关(Zuul ) )。
各自的特征
典型的网关Zuul、Zuul2和spring cloud网关
5 .着手实施API网关