
java IO专题
BIO、NIO以及AIO讲解;BIO到底为什么是阻塞的?NIO解决了什么问题?什么又是AIO?
梧桐和风
学如逆水行舟,不进则退。要知道,比你聪明的人比你还努力。
展开
-
java I/O体系总结(五)netty架构浅析
java I/O体系总结(五)netty架构浅析 简介 netty是使用java编写的高性能IO框架,旨在为高并发场景提供支持。netty可提供多种IO模型的支持,如OIO,NIO等。一般来说,非阻塞IO更适合于大规模高并发场景,我们使用netty主要也因为其封装了原生NIO,规避了其中复杂易出错的细节,更加易用、通用。 从示例讲起 netty既然是以java NIO为基础构建的(当然...原创 2018-09-17 17:41:19 · 286 阅读 · 0 评论 -
java I/O体系总结(四) 使用socket构建HTTP服务器
java I/O体系总结(四) 使用socket构建HTTP服务器 前言 在 java I/O体系总结(三)中,已使用阻塞和非阻塞的方式分别构建了一个简单的服务器。HTTP作为Web浏览器和Web服务器之间通信的标准协议,在网络编程中有也重要位置。下面就深入HTTP协议,尝试使用NIO构建简单的HTTP服务器。 HTTP协议 我们都知道,HTTP协议是应用层协议,全称超文本传输协议...原创 2018-09-14 18:04:54 · 310 阅读 · 0 评论 -
java I/O体系总结(二) java IO补充
java I/O 体系总结二 前言 继续说java的I/O体系,主要补充下上文没有提到的知识点或类。 java有关io的类在java.io包中。主要有以下几个部分。 java i/o流部分(也是IO的主体部分) io辅助类,如File、RandomAccessFile或FileDescriptor,Closeable及Flushable等。 io异常类 io流分类 根据数据...原创 2018-09-14 12:00:45 · 332 阅读 · 0 评论 -
java I/O体系总结(三) java NIO
java 新IO IO NIO 特点 面向流 面向缓冲 是否阻塞 阻塞IO 非阻塞IO 无 选择器 java 新IO主要部分:Buffer(缓冲区)、Channel(通道)、Selectors(选择器) Java NIO的非阻塞模式,如使一个线程从某通道发送请求读取数据,但是它仅能得到目前可用的数据,如果目前没有数...原创 2018-09-13 21:23:05 · 450 阅读 · 0 评论 -
java I/O体系总结
java I/O体系总结 I/O流的理解 先看看流的概念 流是一组有顺序的,有起点和终点的字节集合,是对数据传输的总称或抽象。即数据在两设备间的传输称为流,流的本质是数据传输,根据数据传输特性将流抽象为各种类,方便更直观的进行数据操作。 通俗的说,有两个文件A和B,想要把A的内容拷贝到B中,可以假设两文件间有一个通道,把A的数据按字节或是字符的形式传送给B。这个通道就是java...原创 2018-09-10 16:57:20 · 579 阅读 · 2 评论 -
BIO、NIO以及AIO特点及比较
BIO、NIO以及AIO特点及比较 BIO 传统阻塞式IO的瓶颈在于每个连接都要创建线程,当连接过多时不能处理大量连接。 讨论为什么传统IO会阻塞? 首先说明一下socket socket是支持TCP/IP网络通信的基础,是网络通信端点的抽象表示。 可以使用5元组表示socket。为 协议,源ip,源port,目标ip,目标port。 协议可选TCP或UDP,是TCP/IP协议的封装和应用。soc...原创 2019-02-20 21:52:16 · 1054 阅读 · 0 评论