一、libevent特性
libevent是一个轻量级的开源高性能网络库,应用广泛。比如大家比较熟悉的memcached、chrome等。
Libevent具有以下优点:
- 事件驱动,高性能
- 轻量级,专注于网络
- 跨平台,在主流操作系统上都能运行。
- 可扩展性,考虑各种使用的情景,提供良好的性能。
- 方便可靠,只需要调用少量的libevent接口就能使用很好地使用libevent库。
二、libevent主要功能
- libevent采用了Reactor反应堆模式。具备reactor模式响应快、编程简单、可扩展、可复用等优点。
- 支持多种I/O多路复用机制, select、poll、epoll、kqueue、dev/poll、evports等,可以运行在Windows、Linux、BSD和Mac Os、Solaris系统上。
- 实现了有很好扩展性的evbuffer,用于用户层数据的收发缓冲,并支持对通信流量做限制。
- 提供了定时器功能。
- 支持http服务。