首页
沸点
课程
数据标注
HOT
AI Coding
更多
直播
活动
APP
插件
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
netty
订阅
buyuii
更多收藏集
微信扫码分享
微信
新浪微博
QQ
12篇文章 · 0订阅
彻底理解 IO多路复用
IO多路复用是一种同步IO模型,实现一个线程可以监视多个文件句柄;一旦某个文件句柄就绪,就能够通知应用程序进行相应的读写操作;没有文件句柄就绪时会阻塞应用程序,交出cpu。多路是指网络连接,复用指的是同一个线程 epoll有EPOLLLT和EPOLLET两种触发模式,LT是默认…
杂谈 : 聊一聊NIO
NIO 是老生常谈了 , 由于最近准备开 Netty 的新坑了 , 不再局限于使用 , 初期先把前置的知识点回顾一下
从linux内核理解Java怎样实现Socket通信
前言前段时间买本书研究了TCP/IP通信,弄清楚了计算机之间是怎么通信的。网络通信的的基础就是TCP/IP协议簇,也被称为TCP/IP协议栈,也被简称为TCP/IP协议。TCP/IP协议并不是只有TC
掌握这5个技巧,彻底掌握Netty中的零拷贝!
Linux 按照特权等级,把进程的运行空间分为内核空间和用户空间,分别对应着下图中, CPU 特权等级分为4个,Linux 使用 Ring 0 和 Ring 3。 用户空间(Ring 3)只能访问受限资源,不能直接访问内存等硬件设备,必须通过系统调用陷入到内核中,才能访问这些特…
Doug Lea在J.U.C包里面写的BUG又被网友发现了
一个编号为 8073704 的 JDK BUG,将串联起我的这篇文章。 也就是下面的这个链接。 这个 BUG 在 JDK 9 版本中进行了修复。也就是说,如果你用的 JDK 8,也许会遇到这样的问题。 这个 BUG 说:FutureTask.isDone 方法在任务还没有完成的…
Netty源码分析系列之常用解码器(上)
在上一篇文章中,只分析了 netty 如何通过编解码器解决了 TCP 粘包、半包的问题,没有具体分析解码器是如何来对数据进行解码的,今天本文将具体分析这些解码器的工作原理。 netty 为我们提供了几个十分常用的解码器,这几个解码器几乎能满足我们所有的场景,这几个解码器根据难易…
Netty源码分析系列之TCP粘包、半包问题以及Netty是如何解决的
在上一篇文章中分析到了 Netty 服务端是如何进行新连接的接入的,那么当新连接接入后,就可以开始数据的读写操作了。在进行数据读写操作时,对于 TCP 连接而言,netty 就需要解决 TCP 中粘包、半包的问题,这将是本文今天重点分析的内容。在开始阅读本文之前,可以先思考一下…
Netty实战:设计一个IM框架就这么简单!
bitchat-example 模块提供了一个服务端与客户端的实现示例,可以参照该示例进行自己的业务实现。 要启动服务端,需要获取一个 Server 的实例,可以通过 ServerFactory 来获取。 目前客户端提供了三种 Func,分别是:登录,查看在线用户列表,发送单聊…
跟我一起开发商业级IM(1)—— 技术选型及协议定义
终于可以开始写这个系列的文章了,本系列文章预计将分为13篇,由于IM涉及的知识点稍复杂,所以每个知识点都会单独用一篇文章来阐述,尽量讲透彻,方便大家理解。 可能大家会问,有了之前的NettyChat和开源一个自用的Android IM库,基于Netty+TCP+Protobuf…
理解高性能网络模型
阻塞调用是指调用结果返回之前,当前线程会被挂起。调用线程只有在得到结果之后才会返回 两者的最大区别在于被调用方在收到请求到返回结果之前的这段时间内,调用方是否一直在等待。阻塞是指调用方一直在等待而且别的事情什么都不做。非阻塞是指调用方先去忙别的事情 对于一个套接字上的输入操作,…