
nio
文章平均质量分 90
gaohe7091
这个作者很懒,什么都没留下…
展开
-
Java NIO聊天窗口实例
出处:http://developer.51cto.com/art/201112/307703.htm 本文主要给介绍了Java NIO聊天窗口的实例。 AD:2013云计算架构师峰会课程资料下载 一、服务器 package com.ww.server; import java.io.IOException; import java.net.InetSocketAdd转载 2014-02-08 15:52:08 · 789 阅读 · 0 评论 -
浅谈 Linux下的零拷贝机制
什么是零拷贝 维基上是这么描述零拷贝的:零拷贝描述的是CPU不执行拷贝数据从一个存储区域到另一个存储区域的任务,这通常用于通过网络传输一个文件时以减少CPU周期和内存带宽。 零拷贝给我们带来的好处: 减少甚至完全避免不必要的CPU拷贝,从而让CPU解脱出来去执行其他的任务 减少内存带宽的占用 通常零拷贝技术还能够减少用户空间和操作系统内核空间之间的上下文切换 Linux系统的“...转载 2019-03-07 11:28:50 · 162 阅读 · 0 评论 -
netty4粘包/拆包/断包 解决方案
粘包、拆包表现形式 现在假设客户端向服务端连续发送了两个数据包,用packet1和packet2来表示,那么服务端收到的数据可以分为三种,现列举如下: 第一种情况,接收端正常收到两个数据包,即没有发生拆包和粘包的现象,此种情况不在本文的讨论范围内。 第二种情况,接收端只收到一个数据包,由于TCP是不会出现丢包的,所以这一个数据包中包含了发送端发送的两个数据包的信息,这种现象即为粘包。这种情况由...转载 2019-03-04 17:54:47 · 354 阅读 · 0 评论 -
这可能是目前最透彻的Netty原理架构解析
出处:https://www.toutiao.com/i6620280257846968840 本文基于 Netty 4.1 展开介绍相关理论模型,使用场景,基本组件、整体架构,知其然且知其所以然,希望给大家在实际开发实践、学习开源项目方面提供参考。 Netty 是一个异步事件驱动的网络应用程序框架,用于快速开发可维护的高性能协议服务器和客户端。 JDK 原生 NIO ...转载 2019-03-07 10:55:44 · 298 阅读 · 0 评论 -
零拷贝
今日看rocketMQ的设计,读到如何提高broker的发送性能,看到了使用mmp(文件内存映射)的技术,零拷贝,提高了数据从文件到内存再到网络的传输效率。这里有点迷糊,所以详细google了一把。特写下来留作记录。 内容都是来自于已有的东西,都放到后文的参考文档里面,参考文档比我详细多了,有图有解释,有理论,甚至有代码,如果能看参考文档的原文的话,建议看原文。 概念澄清 “零拷贝”:在整个发...转载 2019-03-07 10:54:10 · 220 阅读 · 0 评论 -
Netty学习二:Java IO与序列化
出处:https://www.cnblogs.com/TomSnail/p/6129235.html 1 Java IO 1.1 Java IO 1.1.1 IO IO,即输入(Input)输出(Output)的简写,是描述计算机软硬件对二进制数据的传输、读写等操作的统称。 按照软硬件可分为: 磁盘IO 内存IO 网络IO 按照处理的方式可分为: 同步IO 非阻塞IO 异步...转载 2018-12-05 15:20:39 · 161 阅读 · 0 评论 -
Netty学习一:基本知识
出处:https://www.cnblogs.com/TomSnail/p/6122433.html 1. Netty基础知识 1.1 Netty出现的原因 Java NIO 太难用,存在BUG(如Epoll-Bug) 基于第一点,大多数高性能服务器被C和C++盘踞 同样基于第一点,Java NIO编程门槛高 业界其他的NIO框架不成熟 1.2 Netty Netty是由JBOSS提...转载 2018-12-05 15:05:01 · 175 阅读 · 0 评论 -
JAVA Zero Copy的相关知识
出处:https://my.oschina.net/cloudcoder/blog/299944 介绍 java 的zero copy多在网络应用程序中使用。Java的libaries在linux和unix中支持zero copy,关键的api是java.nio.channel.FileChannel的transferTo(),transferFrom()方法。我们可以用这两个方法来...转载 2018-12-05 15:03:09 · 236 阅读 · 0 评论 -
NIO 入门
出处:http://www.ibm.com/developerworks/cn/education/java/j-nio/ JDK 1.4 中引入的新输入输出 (NIO) 库在标准 Java 代码中提供了高速的、面向块的 I/O。本实用教程从高级概念到底层的编程细节,非常详细地介绍了 NIO 库。您将学到诸如缓冲区和通道这样的关键 I/O 元素的知识,并考察更新后的库中的标准 I/O 是转载 2014-02-08 14:58:00 · 466 阅读 · 0 评论 -
BIO与NIO、AIO的区别(容易理解的解释)
IO的方式通常分为几种,同步阻塞的BIO、同步非阻塞的NIO、异步非阻塞的AIO。 一、BIO 在JDK1.4出来之前,我们建立网络连接的时候采用BIO模式,需要先在服务端启动一个ServerSocket,然后在客户端启动Socket来对服务端进行通信,默认情况下服务端需要对每个请求建立一堆线程等待请求,而客户端发送请求后,先咨询服务端是否有线程相应,如果没有则会一直等待或者遭到拒绝...转载 2019-04-15 19:34:47 · 137 阅读 · 0 评论