网络编程
文章平均质量分 81
蛙广志
定位抖音直播 server,有需要可以私聊内推
展开
-
手写基于Netty的RPC框架【纯手写,超硬核】!
写在前面Netty作为网络编程的王者人物,写在简历上是妥妥的加分项,除了对Netty的基本使用和源码分析,这里博主提供一套基本的纯手写RPC框架,基于Netty的实战项目,写在简历上岂不美滋滋,代码食用地址一、整体代码架构图首先我们明白一款RPC框架需要哪些组件,以及整体的执行流程我们需要那些组件或解决哪些问题?确定通讯协议,为了更好的理解RPC通讯原理,本框架使用自定义协议和Http协议两种形式如何解决网络通讯中的拆包粘包?使用动态代理,使得客户端只需要调用需求的方法,在代理中获取请求信息原创 2021-09-29 19:31:17 · 1197 阅读 · 0 评论 -
【Netty学习】EventLoop源码剖析
Netty的核心代码十分复杂,NioEventLoop是一个重量级类,我们买办法全部看一遍,这里我会选出核心的流程,带着问题去看源码,便会事半功倍,废话不多说,我们开始老规矩,先看看NioEventLoop的继承关系NioEventLoop的设计原理Netty的NioEventLoop并不是一个纯粹的I/O线程,它除了负责I/O的读写之外,还负责处理以下两种任务系统的task:也就是普通的task任务,通过调用NioEventLoo的execute(task)方法实现,Netty有许多系统Tas原创 2021-05-09 23:39:21 · 527 阅读 · 6 评论 -
【Netty学习】channel,channelPipeline,channelhandlerContext源码级分析
channel,channelPipeline,channelhandlerContext是Netty中的核心组件,接下来我们将从源码的角度分析这三大组件是如何协调工作的,本文建立在对三者有一个基本的了解,一些基本知识就不再赘述前置知识:到底什么是出战和入站服务器端和客户端都有一个装载ChannelHandler链的ChannelPipeline的容器,所以出战和入站我们分为两个角度当数据从socket向pipeline流动时,这个动作称之为入站,当数据从pipeline流向socket时,这个动作原创 2021-05-09 13:51:29 · 240 阅读 · 0 评论 -
【Netty学习】从Reactor模型到Netty模型,一文搞懂
本文将详细的介绍Reactor模型以及在Netty中的具体体现,阅读前提最好对Netty以及多线程有一个基本的了解,(本文基于韩老师的Netty教程)要想了解Reactor模型,我们从传统的IO阻塞模型一步步分析壹:传统的IO阻塞模型(说明:黄色的框表示对象,蓝色的框表示线程,白色的框表示方法)模型特点:采用阻塞IO模式处理连接请求或者执行read,write方法每个连接都需要独立的线程完成数据的输入,业务处理,数据返回图中多线程阻塞IO模型,请求和read方法都会阻塞线程,传统模型为每个原创 2021-05-08 23:08:03 · 234 阅读 · 2 评论