Python 并发网络编程库Eventlet
2011-12-24 22:30
253 查看
Eventlet 是一个开源的高度伸缩性的Python网络编程库。
根据官方介绍大致特性如下:
非阻塞I/O模型,使用epoll or libevent,关于epoll的优点,参见Linux的epoll模型和epoll精髓。
协程(Coroutines)使得开发者可以采用阻塞式的开发风格,却能够实现非阻塞I/O的效果
隐式事件调度,使得可以在Python解释器或者应用程序的某一部分去使用Eventlet
Eventlet 可以用来处理多线程方面的工作,它使用的是 green threads(例如Coroutines,协程),所以用资源的开销很少。关于协程,大致可以理解成允许子程序可以多次暂停和恢复执行,是实现多任务的一种有效手段, 具体见这里。green threads几乎不耗费资源,并且并不是通过抢占式来调度,而是通过释放(yield),让其它green thread得以执行。使用这种方法最主要的好处就是不需要锁住共享的数据结构,因为只有显式yield之后,另一个green thread 才能访问该共享数据结构。
根据官方介绍大致特性如下:
非阻塞I/O模型,使用epoll or libevent,关于epoll的优点,参见Linux的epoll模型和epoll精髓。
协程(Coroutines)使得开发者可以采用阻塞式的开发风格,却能够实现非阻塞I/O的效果
隐式事件调度,使得可以在Python解释器或者应用程序的某一部分去使用Eventlet
Eventlet 可以用来处理多线程方面的工作,它使用的是 green threads(例如Coroutines,协程),所以用资源的开销很少。关于协程,大致可以理解成允许子程序可以多次暂停和恢复执行,是实现多任务的一种有效手段, 具体见这里。green threads几乎不耗费资源,并且并不是通过抢占式来调度,而是通过释放(yield),让其它green thread得以执行。使用这种方法最主要的好处就是不需要锁住共享的数据结构,因为只有显式yield之后,另一个green thread 才能访问该共享数据结构。
相关文章推荐
- Python高并发的网络编程库:eventlet
- python之高性能网络编程并发框架eventlet实例 推荐
- Python并发编程eventlet
- Python网络编程之socketserver实现多并发
- python之高性能网络编程并发框架eventlet实例
- python之高性能网络编程并发框架eventlet实例
- 第六篇:python高级之网络编程
- Python网络编程
- python 网络编程
- python_fullstack基础(十八)-并发编程-进程
- 理解Python并发编程-PoolExecutor篇
- Python网络编程-入门篇
- Python3之网络编程总结
- Python 网络编程
- Note5:网络编程之并发服务器(select,epoll,协程)
- 高并发网络编程之epoll详解
- python(12-4 网络编程 ---HTTP协议 报文收发结构 )
- python网络编程:一、前言及socket初探
- Linux网络编程之简单并发服务器