Cent os 下 libevent,greenlet,gevent 的安装 和介绍 记录

 

1.   libevent python

    libevent是一个事件触发的网络库,适用于windows、linux、bsd等多种平台,内部使用linux

select、epoll、kqueue等系统调用管理事件机制。著名分布式缓存软件memcached也是libevent 编程

based,并且libevent在使用上能够作到跨平台,并且根据libevent官方网站上公布的数据统计,windows

彷佛也有着非凡的性能缓存

主要组成:libevent包括事件管理、缓存管理、DNS、HTTP、缓存事件几大部分。事件管理包括各服务器

种IO(socket)、定时器、信号等事件;缓存管理是指evbuffer功能;DNS是libevent提供的一个网络

异步DNS查询功能;HTTP是libevent的一个轻量级http实现,包括服务器和客户端  多线程

centOS下  安装:并发

wget http://www.monkey.org/~provos/libevent-1.4.12-stable.tar.gz框架

tar zxvf libevent-1.4.12-stable.tar.gz

cd libevent-1.4.12-stable

生成配置 ./configure -prefix=/usrbevent

编译安装 make && make install

测试libevent是否安装成功:ls -al /usr/lib | grep libevent, 有正常的文件及ok


2.   greenlet 

    greenlet 包是 Stackless 的副产品,其将微线程称为 “tasklet” 。tasklet运行在伪并发中,使用channel进行同步数据交换。greenlet 跟stackless的最大区别是greenlet须要你本身来处理线程切换, 就是说,你须要本身指定如今执行哪一个greenlet再执行哪一个greenlet

安装  :easy_install greenlet(先须要本身安装easy_install)

测试是否安装成功: 

#python

>>import greenlet    无报错就成功


3.   gevent

  gevent就是一个基于coroutine的python网络开发框架。协程是一种并发模型,但不一样于thread

和callback,它的全部task都是能够在一个线程里面执行,而后能够经过在一个task里面主动放

弃执行来切换到另外一个task执行,它的调度是程序级的,不像thread是系统级的调度。

Gevent最明显的特征就是它惊人的性能,尤为是当与传统线程解决方案对比的时候。在这一点上

,当负载超过必定程度的时候,异步I/O的性能会大大的优于基于独立线程的同步I/O这几乎是常

识了。同时Gevent提供了看上去很是像传统的基于线程模型编程的接口,可是在隐藏在下面作的

是异步I/O。更妙的是,它使得这一切透明

 安装:下载最新gevent

# tar zxvf gevent-1.0.tar.gz

# cd gevent-1.0rc1

# python setup.py install

检测

#python

>>import gevent    无报错就成功


4. 

用他们来作什么?

写网络程序,多线程处理,提升产品性能!


总结: 对于比较好库和开源软件,咱们要不学习利用,他山之石能够攻玉 啊   ,加油  G0561

相关文章
相关标签/搜索