http://blog.csdn.net/mafuli007/article/details/7233304epoll的优点:支持一个进程打开大数目的socket描述符(FD)select 最不能忍受的是一个进程所打开的FD是有一定限制的IO效率不随FD数目增加而线性下降传统的select/poll...
分类:
其他好文 时间:
2014-09-24 00:58:35
阅读次数:
225
Netty的ByteBuf缓冲区实现地比Java本身的ByteBuffer更加灵活,方便。它的类结构也比较复杂,这里只说ByteBuf核心的几个要点。
1. 最重要的是要理解为什么要ByteBuf这个组件。主要还是因为基于select / poll / epoll这种IO多路复用技术的NIO是非阻塞同步IO的模型,由于是同步IO,需要用户线程自己来处理IO的读写,由于是非阻塞的,每次调用...
分类:
Web程序 时间:
2014-09-22 19:06:32
阅读次数:
626
参考配置events { worker_connections 65535; use epoll; } http { log_format f_nginx "$remote_addr`$server_addr`$server_protocol`$request_method`$se...
分类:
其他好文 时间:
2014-09-22 18:54:13
阅读次数:
162
1. Select源码解析
基于2.6.28内核代码,select主要包含4个函数。
sys_select:处理时间参数,然后调用core_sys_select。
core_sys_select:处理三个fd_set参数(in, out, ex),然后调用do_select。
do_select:遍历所有的fd,做select/poll的工作。在合适的时机把...
分类:
其他好文 时间:
2014-09-19 01:12:44
阅读次数:
192
概论:select、poll和epoll三组I/O复用系统调用,这3组系统调用都能同时监听多个文件描述符。它们将等待由timeout参数指定的超时时间,直到一个或者多个文件描述符上有事件发生时返回.返回值是就绪的文件描述符的数量。返回0表示没有事件发生,超时.我们从事件集、最大支持文件描述符的数量、...
分类:
其他好文 时间:
2014-09-18 22:15:04
阅读次数:
156
libevent是一个事件触发的网络库,适用于windows、linux、bsd等多种平台,内部使用select、epoll、kqueue等系统调用管理事件机制。著名分布式缓存软件memcached也是libevent based,而且libevent在使用上可以做到跨平台,而且根据libeve.....
分类:
其他好文 时间:
2014-09-18 13:12:23
阅读次数:
284
libevent是一个事件触发的网络库,适用于windows、linux、bsd等多种平台,内部使用select、epoll、kqueue等系统调用管理事件机制。著名分布式缓存软件memcached也是libevent based,而且libevent在使用上可以做到跨平台,而且根据libeve.....
int select(int nfds, fd_set *readfds, fd_set *writefds, fd_set *exceptfds, struct timeval *timeout);
int poll(struct pollfd *fds, nfds_t nfds, int timeout);
int epoll_wait(int epfd, struct...
分类:
其他好文 时间:
2014-09-17 23:23:42
阅读次数:
325
epoll函数epoll函数的使用与select、poll上有很大的差异.epoll使用一组函数来完成任务,而不是单个函数.epoll把用户关心的文件描述符上的事件放在内核里的一个事件表中,从而无需每次都要重复传入文件描述符集或者事件集.epoll需要一个额外的文件描述符,来唯一标示内核中的这个事件...
分类:
其他好文 时间:
2014-09-17 20:21:42
阅读次数:
188
本篇文章主要是我今天阅读memcached源码关于进程启动,在网络这块做了哪些事情。
一、iblievent的使用
首先我们知道,memcached是使用了iblievet作为网络框架的,而iblievet又是单线程模型的基于linux下epoll事件的异步模型。因此,其基本的思想就是 对可读,可写,超时,出错等事件进行绑定函数,等有其事件发生,对其绑定函数回调。
...
分类:
其他好文 时间:
2014-09-15 01:08:38
阅读次数:
352