libev最大的特点是采用了轮询文件描述符(select,poll,epoll,iocp,kqueue)的方式来代替线程调度和切换,省去了线程切换,效率很高。 用小顶堆而不是链表来管理定时器,有以下优势: 1、容器中的元素实现有序排列(当然链表也能做有序排列,但性能不行,参见后面几点),这样在轮询时 ...
分类:
其他好文 时间:
2018-01-18 20:34:20
阅读次数:
194
Libevent、libev、libuv三个网络库,都是c语言实现的异步事件库Asynchronousevent library)。 异步事件库本质上是提供异步事件通知(Asynchronous Event Notification,AEN)的。异步事件通知机制就是根据发生的事件,调用相应的回调函数 ...
分类:
其他好文 时间:
2018-01-02 11:24:55
阅读次数:
169
libuv 和 libev ,两个名字相当相近的 I/O Library,最近有幸用两个 Library 都写了一些东西,下面就来说一说我本人对两者共同与不同点的主观表述。 高性能网络编程这个话题已经被讨论烂了。异步,异步,还是异步。不管是 epoll 也好,kqueue 也罢,总是免不了异步这个话 ...
分类:
其他好文 时间:
2018-01-02 11:24:49
阅读次数:
121
php libevent扩展具有很强大的功能。以下摘自百度百科: Libevent 是一个用C语言编写的、轻量级的开源高性能网络库,主要有以下几个亮点:事件驱动( event-driven),高性能;轻量级,专注于网络,不如 ACE 那么臃肿庞大; 源代码相当精炼、易读;跨平台,支持 Windows ...
分类:
Web程序 时间:
2017-11-07 14:31:41
阅读次数:
301
Memcached是一个内存数据库,数据以key/value键值对的形式保存在服务器预先分配的内存区块中,由于Memcached服务自身没有对缓存的数据进行持久化存储的设计,因此,在服务器端的Memcached进程重启之后,数据就会丢失。且当内存中缓存的数据容量达到启动时设定的内存值时,也会自动使用 ...
分类:
其他好文 时间:
2017-11-05 21:16:36
阅读次数:
156
thrift cpp环境搭建: 1、 安装boost_1_53_0,注意,使用vs2010版本时,使用二进制的boost安装版本,生成的lib有可能是,在后续操作会出问题。在源码目录中,运行bootstrap.dat,然后会生成b2.exe文件,该文件可以编译boost需要的库,生成文件在boost ...
分类:
编程语言 时间:
2017-10-27 01:45:40
阅读次数:
412
回想起之前自己用纯c手动写epoll循环,libevent用起来还真是很快捷啊!重写了之前学习的时候的一个例子,分别用纯c与libevent来实现。嗯,为了方便对比一下,就一个文件写到黑了。 纯c版: 一个server.c与client.c共同引用的头文件func.h 1 #include<stdi ...
分类:
其他好文 时间:
2017-10-24 00:17:55
阅读次数:
294
环境:centos5.5 32位 oracle11G NFS环境:centos6.8mini版 共享方式:nfs 共享路径:/home/oracle 目录权限:755 NFS的搭建 //查看防火墙状态 [root@data ~]# service iptables status Table: fil... ...
分类:
数据库 时间:
2017-09-28 01:04:11
阅读次数:
315
1:停掉正在运行的zabbix服务,确保没有新数据写入数据库。 2:备份原zabbix的数据库数据,以及相关文件。 3:官网下载zabbix安装包zabbix-3.4.1.tar.gz,上传到服务器,解压,并在新的目录中编译安装新版本。 zabbix_server 3.4.1编译时候竟然提示缺包,安 ...
分类:
其他好文 时间:
2017-09-11 18:02:40
阅读次数:
306
转自:http://m.blog.csdn.NET/blog/weiqubo/16355653 libev是Marc Lehmann用C写的高性能事件循环库。通过libev,可以灵活地把各种事件组织管理起来,如:时钟、io、信号等。libev在业界内也是广受好评,不少项目都采用它来做底层的事件循环。 ...
分类:
其他好文 时间:
2017-09-02 01:11:29
阅读次数:
313