1、基本概念 IO多路复用是指内核一旦发现进程指定的一个或者多个IO条件准备读取,它就通知该进程。IO多路复用适用如下场合: (1)当客户处理多个描述字时(一般是交互式输入和网络套接口),必须使用I/O...
分类:
其他好文 时间:
2015-05-11 01:27:31
阅读次数:
169
1、基本知识 epoll是在2.6内核中提出的(mac没有),是之前的select和poll的增强版本。相对于select和poll来说,epoll更加灵活,没有描述符限制。epoll使用一个文件描述符管理多个描述符,将用户关系的文件描述...
分类:
其他好文 时间:
2015-05-09 20:40:53
阅读次数:
165
今天在使用StackExchange Redis客户端时。我想要使用BRPOP,但是我发现StackExchange Redis并没有提供API,没办法只好找资料看文档了。原来StackExchange Redis使用的是Multiplexing(多路复用),也就是说它只跟redis server维...
分类:
其他好文 时间:
2015-05-08 01:29:19
阅读次数:
1077
keepalived ? ? ?keepalived 使用纯 C 语言写成。软件围绕中心的 I/O 多路复用器设计提供实时的网络。它的设计重点是在各个元素之间实现模块化,为了保证稳定性和健壮性,守护进程被分成三个独立的进程。整体设...
分类:
其他好文 时间:
2015-04-30 10:59:44
阅读次数:
152
Libevent的核心是事件驱动、同步非阻塞,为了达到这一目标,必须采用系统提供的I/O多路复用技术,而这些在Windows、Linux、Unix等不同平台上却各有不同,如何能提供优雅而统一的支持方式,是首要关键的问题。
统一的关键
Libevent支持多种I/O多路复用技术的关键就在于结构体eventop,这个结构体前面也曾提到过,它的成员是一系列的函数指针, 定义在event-int...
分类:
其他好文 时间:
2015-04-22 00:39:27
阅读次数:
152
零。前言本部分将讲解HTTP/2协议中对流的定义和使用,其实就是在说HTTP/2是若何做到多路复用的。一。流和多路复用的关系1.流的概念流(Stream),服务器和客户端在HTTP/2连接内用于交换帧数据的独立双向序列,逻辑上可看做一个较为完整的交互处理单元,即表达一次完整的资源请..
分类:
Web程序 时间:
2015-04-20 11:21:39
阅读次数:
647
对象行为类的设计模式,对同步事件分拣和派发。别名Dispatcher(分发器)
Reactor模式是处理并发I/O比较常见的一种模式,用于同步I/O,中心思想是将所有要处理的I/O事件注册到一个中心I/O多路复用器上,同时主线程阻塞在多路复用器上;一旦有I/O事件到来或是准备就绪(区别在于多路复用器是边沿触发还是水平触发),多路复用器返回并将相应I/O事件分发到对应的处理器中。
Reacto...
分类:
其他好文 时间:
2015-04-12 01:26:46
阅读次数:
307
在2015年JavaLand大会上,Ed Burns展示了Java EE Servlet 4.0规范(JSR 369)的概要,演讲的重点在于Java EE平台对HTTP/2的支持。HTTP/2旨在解决现存HTTP规范中的问题,并引入新的功能,包括request/response多路复用、二进制帧传输...
分类:
编程语言 时间:
2015-04-03 14:54:12
阅读次数:
154
著名端口 端口号码 / 层 名称 注释 1 tcpmux TCP 端口服务多路复用 5 rje 远程作业入口 7 ...
分类:
其他好文 时间:
2015-03-30 15:57:29
阅读次数:
359
Redis服务器负责与多个客户端建立连接,处理客户端请求,保存各个数据库状态。通过使用由I/O多路复用技术实现的事件处理器,Redis服务器采用单线程单进程处理客户端命令请求。Redis通过redisServer结构来记录服务端的各种状态。
命令请求执行过程
1、客户端发送命令请求,客户端将命令请求转换成协议格式。
2、服务端读取命令请求,将命令请求缓存在客户端输入缓冲区中,对输入缓冲区中的...
分类:
其他好文 时间:
2015-03-20 09:22:04
阅读次数:
162