Netty核心源码剖析
文章平均质量分 66
基于nio的netty核心源码剖析,一步一步揭开netty底层的神秘面纱。
本专栏主要参考Netty in Actio书籍以及韩顺平老师的视频,在此感谢大牛们的对于技术的贡献!
mist蒙
这个作者很懒,什么都没留下…
展开
-
第六章、谈谈数据的入栈与出栈
经过上一篇的分析,我已经对ntty的服务端的启动流程以及客户端连接之后的数据发送逻辑有了一定的认识。**以下是channel注册到workerGroup的流程**bossGroup在接收到客户端连接发送数据的请求之后,会将这个channel注册到workerGroup上。workerGroup收到注册请求之后,执行ChannelIntializer的initChannel方法,将我们自己的handler加入到pipeline中handler加入到pipeline的handler联之后,依次执行每原创 2022-04-13 12:02:15 · 435 阅读 · 0 评论 -
第五章、netty启动、客户端传送数据流程分析
前言本人所有的源码分析都是基于代码一行行的debug追踪、直到自己对于整个流程都有大概的思路之后,才会再一次一步一步的去给代码上打注释。这样不可避免的出现有些理解不到位、理解偏差、大量的代码对于阅读性不太友好、甚至有的会直接看懵比。。 但是对于源码分析这一块,我实在找不到更好的办法去处理,网上也有很多优秀博主,他们的分析比较生动简洁、但是对于源码这一块,我暂时还没发现有比较好的借鉴的例子…一、Netty服务端启动监听public final class EchoServer { sta原创 2022-04-11 11:11:35 · 344 阅读 · 0 评论 -
第四章、Netty的核心组件
Netty的基本介绍netty官网是这么介绍netty的Netty is a NIO client server framework which enables quick and easy development of network applications such as protocol servers and clients. It greatly simplifies and streamlines network programming such as TCP and UDP socket原创 2022-03-31 10:08:36 · 249 阅读 · 0 评论 -
第三章、谈谈Reactor模式
什么是Reactor?在Scalable IO in Java一书中,作者总结了三种反应器模式一、基本版本二、多线程版本三、主从Reactor版本原创 2022-03-15 20:15:11 · 532 阅读 · 0 评论 -
第二章、新一代非阻塞IO--NIO
一、NIO是什么在Netty in Action中有这么一段解释New or non-blocking?The N in NIO is typically thought to mean non-blocking rather than new.NIO has beenaround for so long now that nobody calls it new IO anymore. Most people refer to it as nonblocking IO新的还是非阻塞的?NIO中原创 2022-03-11 14:17:33 · 374 阅读 · 0 评论 -
第一章、阻塞模式下的BIO
一、BIO是什么bio全名为Bloking IO,也就是阻塞iobio是传统的java io, 包名–java.iobio实现模式:服务端为每一个请求的客户端都去创建一个线程来处理业务逻辑。二、BIO简单架构模式以及优缺点架构模式在客户端去与服务端建立连接之后,服务端会为每一个客户端都创建一个新的线程,去处理业务逻辑在服务器中,我们能创建的线程是有限制的。并且大量的线程用来处理客户端的连接以及其他操作是很耗费服务器的资源的。并且bio是阻塞io,也就是客户端没有发送数据的时候,服务端会一原创 2022-03-10 14:01:23 · 573 阅读 · 0 评论