netty源码分析 1-1 Netty深入剖析

我们为什么呢要学习Netty通信呢?其实业内我们有很多大型架构都是Netty作为底层通信,异步非阻塞。如:Duddo,RocketMQ,Spark,Elasticsearch,Cassandra,Flink,Netty-SocketIO,Spring5,Play,Grpc。

所以那Netty到底是什么?

1.异步事件驱动框架,用于快速开发高性能服务端和客户端。

2.封装了JDK底层BIO(同步阻塞式IO)和NIO(同步非阻塞式IO)模型,提供高可用的API.

3.自带解码器解析拆包粘包问题,用户只关心业务逻辑。

4.精心设计的reactor线程模型支持高并发海量连接

5.自带各种协议栈让你处理然后我一种通用协议都几时不用亲自动手。

有必要学吗?

1.各大开源项目选择Netty作为底层通信框架

2.更好的使用,少走弯路

3.遇到bug?单机连接数上不去?性能遇到瓶颈?如何调优?

4.讲解reactor线程模型,实践中举一反三

5.庞大的项目是如何组织的,设计模式,体验优秀的设计

6.阅读源码其实没那么苦难。

怎么学?

1.自己摸索不如前人指路。

2.对应socket编程,逐一切入。

3.踩过的坑,积累的经验总结毫无保留的分享,节省大量的时间。

4.调式,分析技巧。

最后可以达到什么水平?

1.掌握Netty底层原理,轻松解决各类疑难杂症,深度调优

2.面试加分,互联网各大框架师的职位,升值加薪,以一档三

3.给官方提issue

4.实现一个简易版的Netty

5.开启阅读源码之旅,根本停不下来。

知识储备

1.熟悉java基础,熟悉多线程

2.熟悉TCP原理,NIO

3.使用过Netty

4.maven,idea工具等。

跟着我一起学Netty源码,你并不孤单,一起进步,

你可能感兴趣的:(java)