(三)bossGroup, workGroup
一、简介
上篇博客中用到了bossGroup, workGroup。我们来看看他们的作用。
二、作用
先看group函数的说明
public ServerBootstrap group(EventLoopGroup parentGroup, EventLoopGroup childGroup)
再看group函数的调用
bootstrap.group(bossGroup, workerGroup);
原来bossGroup就是parentGroup,是负责处理TCP/IP连接的,而workerGroup就是childGroup,是负责处理Channel(通道)的I/O事件。
如果你嫌一个workerGroup线程不够,可以初始化多个线程
workerGroup = new NioEventLoopGroup(workerNum);
下面是一个典型系统的架构
学习借鉴自https://my.oschina.net/u/438393/blog/845300
(三)bossGroup, workGroup相关推荐
- netty设置group的时候,比如b.group(bossGroup ,workGroup),为什么要添加个两个group
注:内容来自于Netty 权威指南第二版 1.netty最基本的服务端.客户端 public void start() throws InterruptedException {/*线程组*///用于 ...
- netty权威指南学习笔记三——TCP粘包/拆包之粘包现象
TCP是个流协议,流没有一定界限.TCP底层不了解业务,他会根据TCP缓冲区的实际情况进行包划分,在业务上,一个业务完整的包,可能会被TCP底层拆分为多个包进行发送,也可能多个小包组合成一个大的数据包 ...
- 三、ByteBuf组件
1.结构 ByteBuf是一个字节容器,内部是一个字节数组. 结构图: 2.重要属性 1.readerIndex 读指针 2.writerIndex 写指针 3.maxCapacity 最大容量 re ...
- Netty Channel源码分析
原文:https://wangwei.one/posts/netty-channel-source-analyse.html 前面,我们大致了解了Netty中的几个核心组件.今天我们就来先来介绍Net ...
- netty websocket客户端_Websocket操作字节序 之 服务端
Websocket在JavaScript中操作字节序 之 客户端 在上一篇文章中,把页面的websocket编码写好了,那么服务端又该如何实现呢?由于该文是在上上篇demo中修改的,所以不全的代码还请 ...
- Netty 私有协议栈 代码实现
私有协议介绍 通信协议从广义上区分,可以分为共有协议和私有协议.由于私有协议的灵活性,它往往会在某个公司或者组织内部使用,按需定制,也因为如此,升级起来会非常方便,灵活性好. Netty私有协议栈功能 ...
- 浅析 Netty 实现心跳机制与断线重连
基础 何为心跳 顾名思义, 所谓 心跳, 即在 TCP 长连接中, 客户端和服务器之间定期发送的一种特殊的数据包, 通知对方自己还在线, 以确保 TCP 连接的有效性. 为什么需要心跳 因为网络的不可 ...
- 四、Netty 实现心跳机制与断线重连
一.概述 何为心跳 顾名思义, 所谓心跳, 即在 TCP 长连接中, 客户端和服务器之间定期发送的一种特殊的数据包, 通知对方自己还在线, 以确保 TCP 连接的有效性. 为什么需要心跳 因为网络的不 ...
- Netty 框架学习(二):DelimiterBasedFrameDecoder和FixedLengthFrameDecoder
文章目录 一.DelimiterBasedFrameDecoder 服务端 1.EchoServer 2.EchoServerChannelHandler 3.EchoServerHandler 客户 ...
- Netty实战 IM即时通讯系统(十一)pipeline与channelHandler
Netty实战 IM即时通讯系统(十一)pipeline与channelHandler 零. 目录 IM系统简介 Netty 简介 Netty 环境配置 服务端启动流程 客户端启动流程 实战: 客户端 ...
最新文章
- 1_发表论文1_题目:(20181127)
- 窗体皮肤ssk 跟背景图片冲突_夫西地酸+阿达帕林~我要好皮肤
- C++的sort排序法
- leetcode 241. Different Ways to Add Parentheses | 241. 为运算表达式设计优先级(Java)
- sqlDataAdapter的FillSchema用法
- 也许你需要点实用的-Web前端笔试题
- 程序员到底会不会修电脑?
- SpringMVC 入门教程
- 计算机视觉基础:图像处理Task01-图像插值算法
- python从入门到放弃pdf下载-Python从入门到放弃(一): Python下载及打开世界之窗...
- 埋石图根点lisp代码_GPS测量作业流程.doc
- jsp实现简易计算器
- java获取当前上一周、上一月、上一年的时间dxl
- 软件测试-黑盒测试方法(一)---等价类划分、边界值、因果图、判定表
- ajax+php 实现即时聊天
- Linux之sqlite3使用
- Linux之ClamAV杀毒软件YUM安装和使用
- SQL Server DMVs in Action 学习笔记
- 【c++】C语言之输入行数,输出实心菱形和空心菱形
- 挖洞思路——验证码绕过
热门文章
- 基于GMap.NET库实现的Windows桌面地图工具软件分享
- linux网卡驱动模块名称,Linux下根据模块名查看网卡驱动版本
- Linux下C语言开发
- winrar命令行加压解密
- 服务器被挖矿木马攻击该怎么处理
- [已解决]你的支付授权失败。请核对你的信息并重试,或尝试其他支付方式。请联系你的银行了解更多信息
- python打印星号组成的三角形_Python利用for循环打印星号三角形的案例
- c语言8bit转10bit,Win10系统如何才能将8bit(位深度)设定变成10bit呢?
- Xposed插件 - Android一键脱壳工具
- Tomcat的使用(详细流程)