![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Java
deep__
这个作者很懒,什么都没留下…
展开
-
I/O模型、阻塞型I/O、非阻塞型I/O、I/O复用
I/O模型有五种I/O模型:阻塞型I/O:blocking IO非阻塞型I/O:nonblocking IOI/O复用:IO multiplexing信号驱动I/O:signal driven IO异步I/O:asynchronous IO对于一个network IO (以read举例),它会涉及到两个系统对象:一个是调用这个IO的进程,另一个就是系统内核(kernel)。当一个read操作发生时,它会经历两个阶段:阶段1: 等待数据准备 (Waiting for the data to原创 2020-10-20 10:10:54 · 441 阅读 · 0 评论 -
零拷贝初探
零拷贝什么是零拷贝?零拷贝技术,就是避免将数据从一块存储拷贝到另外一块存储的技术,从而节省拷贝带来的CPU开销,零拷贝并不是将拷贝操作完全消除掉。传统拷贝:这个没什么说的,就是平时我们一般都会用到的拷贝方式;MMAP方式的拷贝:当应用程序不需要对数据进行访问时,则可以避免将数据从内核空间拷贝到用户空间;SendFile方式的拷贝:写时拷贝技术,数据不需要提前拷贝,而是当需要修改的时候再进行部分拷贝。传统拷贝传统的Linux系统中,标准的I/O接口(例如read,write)都是基于数据拷贝原创 2020-10-20 10:07:43 · 486 阅读 · 0 评论 -
ConcurrentHashMap复习
ConcurrentHashMap我们都知道HashMap在并发下会产生数据不一致问题,所以衍生出了ConcurrentHashMap这样一个在并发环境下也能保证数据一致的Map,但是他的原理是底层代码是怎么写的呢?今天小编就带大家康康(其实是我自己得康康)首先先看JDK1.7中的ConcurrentHashMap的源码是怎样的。1.7首先我们先康康他的结构吧。核心成员变量/** * Segment 数组,存放数据时首先需要定位到具体的 Segment 中。 */final Segmen原创 2020-10-20 10:06:24 · 89 阅读 · 0 评论 -
Netty架构与工作原理
NettyJava NIO三大组件:Selector,Buffer,Channel每个channel都对应一个BufferSelector对应一个线程Buffer是一个内存块,底部有一个数组Buffer//标记private int mark = -1;//当前位置private int position = 0;//缓冲区的位置private int limit;//缓冲区的容量大小private int capacity; Selector常用方法//Open原创 2020-10-20 10:05:13 · 203 阅读 · 0 评论 -
计算机网络面试复习
首先看看模型(从下到上)物理层在物理层上所传送的数据单位是比特。 物理层(physical layer)的作用是实现相邻计算机节点之间比特流的透明传送,尽可能屏蔽掉具体传输介质和物理设备的差异。 使其上面的数据链路层不必考虑网络的具体传输介质是什么。“透明传送比特流”表示经实际电路传送后的比特流没有发生变化,对传送的比特流来说,这个电路好像是看不见的。数据链路层协议:PPP、CSMA/CD主要解决的问题:透明传输、封装成帧、差错检测,局域网属于数据链路层的范畴封装成帧封装成帧就是在数据段的原创 2020-10-20 10:00:35 · 552 阅读 · 1 评论 -
Dubbo整合SpringBoot使用,入门
文章目录Dubbo初探几个问题Dubbo组成部分注册中心服务提供者服务消费者结果结语Dubbo初探几个问题什么是RPC?为什么我要用RPC?什么是Dubbo?RPC:(Remote Procedure Call) 该协议允许运行于一台计算机的程序调用另一个地址空间(通常为一个开放网络的一台计算机)的子程序,而程序员就像调用本地程序一样,无需额外地为这个交互作用编程(无需关注细节)。RPC是一种服务器-客户端(Client/Server)模式,经典实现是一个通过发送请求-接受回应进行信息交互的系统。原创 2020-09-18 19:25:38 · 1158 阅读 · 0 评论