Netty
文章平均质量分 96
智达教育
本人于20年毕业于东大,在学校跟随导师做了多个项目,现在2B大厂工做后端开发,有多年工作经验,同时热爱技术,对前端、python、大数据等多个领域有研究,希望与大家共进步。
展开
-
Netty 网络传输TCP粘包拆包
1)TCP拆包: 一个完整的包可能会被TCP拆分为多个包进行发送2)TCP粘包: 把多个小的包封装成一个大的数据包发送, client发送的若干数据包 Server接收时粘成一包发送方和接收方都可能出现这个原因发送方原因:TCP默认会使用Nagle算法接收方原因: TCP接收到数据放置缓存中,应用程序从缓存中读取 (上次的还没读完下次的已经到了缓存读到的数据多了)UDP: 是没有粘包和拆包的问题,有边界协议、显示分隔符maxFrameLength 数据包的最大长度。原创 2022-09-08 23:41:17 · 1175 阅读 · 1 评论 -
Netty核心组件
一 channel1、 Channel作用,核心模块知识点,生命周期等(封装了Java Nio) 什么是Channel: 客户端和服务端建立的一个连接通道 什么是ChannelHandler: 负责Channel的逻辑处理 什么是ChannelPipeline: 负责管理ChannelH...2019-04-14 11:54:04 · 553 阅读 · 0 评论 -
启动引导类Bootstrap模块
目录启动引导类Bootstrap模块1)服务器启动引导类ServerBootstrap 1) group :设置线程组模型,Reactor线程模型对比EventLoopGroup 2)channel:设置channel通道类型NioServerSocketChannel、OioServerSocketChannel 3) ***** op...原创 2019-04-07 18:18:12 · 1261 阅读 · 0 评论 -
学习Netty核心的组件
📢📢📢📣📣📣哈喽!大家好,我是「奇点」,江湖人称singularity。刚工作几年,想和大家一同进步🤝🤝一位上进心十足的【JavaToB端大厂领域博主】!😜😜😜喜欢java和python,平时比较懒,能用程序解决的坚决不手动解决😜😜😜✨如果有对【java】感兴趣的【小可爱】,欢迎关注我❤️❤️❤️。...原创 2019-04-13 21:27:02 · 89 阅读 · 0 评论 -
Netty——(4)Echo服务编写
1.什么是Echo服务和快速创建Netty项目 1)什么是Echo服务:就是一个应答服务(回显服务器),客户端发送什么数据,服务端就响应的对应的数据 是一个非常有的用于调试和检测的服务(压测、检查服务是否存活)(client端也可以进行Handler处理) 2)IDEA + Maven + jdk8 netty依赖包 ( 查找方...原创 2019-03-28 16:06:35 · 452 阅读 · 0 评论 -
Netty——深入剖析EventLoop和EventLoopGroup线程模型
线程模型 1)高性能RPC框架的3个要素:网络IO模型5个、数据协议(http protobuf(google) thrift)不同的模型所占用的字节不同、也可以影响RPC框架的性能线程模型(io多路复用)(Remote Procedure Call)—远程过程调用,它是一种通过网络从远程计算机程序上请求服务,而不需要了解底层网络技术的协议。RPC协议假定某些传输协议的存在,如TC...原创 2019-04-07 13:22:25 · 333 阅读 · 0 评论 -
Netty——(4)netty的线程模型和Reactor模式
1.Reactor模式1)简单说明设计模式——Reactor模式(反应器设计模式),是一种基于事件驱动的设计模式,在事件驱动的应用中,将一个或多个客户的服务请求分离(demultiplex)和调度(dispatch)给应用程序。在事件驱动的应用中,同步地、有序地处理同时接收的多个服务请求 一般出现在高并发系统中,比如Netty,Redis等优点1)响应快,不会因为单个同步...原创 2019-03-26 10:20:04 · 343 阅读 · 0 评论 -
Netty——(3)高并发编程必备知识IO多路复用技术select、poll、epoll分析
目录1.什么是IO多路复用:2.select基本原理:3.poll的基本原理:4.epoll基本原理:5.三种模型之间的比较1.什么是IO多路复用: I/O多路复用,I/O是指网络I/O, 多路指多个TCP连接(即socket或者channel),复用指复用一个或几个线程。 简单来说:就是使用一个或者几个线程处理多个TCP连接 最大优势...原创 2019-03-25 21:15:42 · 1022 阅读 · 0 评论 -
Linux网络编程的5中I/O模型(简单明了)
目录一 简单例子了解同步/异步 阻塞/非阻塞1.同步阻塞:2.同步非阻塞:3.异步阻塞:4.异步非阻塞:二 Linux网络编程中的五种I/O模型分析1.阻塞IO2.非阻塞IO3.多路复用IO4.信号驱动式I/O(SIGIO)(用的很少)5.异步I/O(重点)POSIX的aio_系列函数) Future-Listener机制;一 简单例子...原创 2019-03-25 18:30:44 · 299 阅读 · 0 评论 -
Netty(2)——Java BIO实现server和client
目录1.通过java编写BIO client——service(scocket)通信(1)创建一个java工程(2)编写socket服务端的骨架(3)编写Handler(4)测试2.编写客户端(1)通过创建socket确定主机和端口号(2)操作输入输出的io流(3)测试3.BIO的优缺点的分析及改进 (1) 优点: 模型简单...原创 2019-03-25 15:45:10 · 428 阅读 · 0 评论