Python高并发的网络编程库:eventlet
2016-09-18 10:10
316 查看
eventlet是一个用来处理和网络相关的python库函数,而且可以通过协程来实现并发,在eventlet里,把“协程”叫做 greenthread(绿色线程)。所谓并发,就是开启了多个greenthread,并且对这些greenthread进行管理,以实现非阻塞式的
I/O。比如说用eventlet可以很方便的写一个性能很好的web服务器,或者是一个效率很高的网页爬虫,这都归功于eventlet的“绿色线程”,以及对“绿色线程”的管理机制。更让人不可思议的是,eventlet为了实现“绿色线程”,竟然对python的和网络相关的几个标准库函数进行了改写,并且可以以补丁(patch)的方式导入到程序中,因为python的库函数只支持普通的线程,而不支持协程,eventlet称之为“绿化”。
它通过greenlet提供的协程功能,让开发者可以不用将以往的多线程等并发程序的开发方式转变成异步状态机模型,就能直接使用select/epoll/kqueue等操作系统提供的支持高并发IO接口,并且能尽可能地发挥它们在并发上的优势。
与它同类的另一款产品是Gevent,它们有着很类似的设计。
I/O。比如说用eventlet可以很方便的写一个性能很好的web服务器,或者是一个效率很高的网页爬虫,这都归功于eventlet的“绿色线程”,以及对“绿色线程”的管理机制。更让人不可思议的是,eventlet为了实现“绿色线程”,竟然对python的和网络相关的几个标准库函数进行了改写,并且可以以补丁(patch)的方式导入到程序中,因为python的库函数只支持普通的线程,而不支持协程,eventlet称之为“绿化”。
它通过greenlet提供的协程功能,让开发者可以不用将以往的多线程等并发程序的开发方式转变成异步状态机模型,就能直接使用select/epoll/kqueue等操作系统提供的支持高并发IO接口,并且能尽可能地发挥它们在并发上的优势。
与它同类的另一款产品是Gevent,它们有着很类似的设计。
相关文章推荐
- Python 并发网络编程库Eventlet
- python之高性能网络编程并发框架eventlet实例 推荐
- python之高性能网络编程并发框架eventlet实例
- Python网络编程之socketserver实现多并发
- Python并发编程eventlet
- python之高性能网络编程并发框架eventlet实例
- Python网络编程之多线程服务端
- 网络编程中设计并发服务器,使用多进程 与 多线程 ,请问有什么区别?
- Python PycURL 网络编程
- Python的网络编程
- Python网络编程
- Python网络编程 Http
- Python的网络编程(二)
- Python的网络编程(一)
- Python PycURL 网络编程
- 【嵌入式Linux学习七步曲之第七篇 Linux的高级应用编程】网络编程中并发服务器的设计模式
- Python 网络编程起步(Socket发送消息)
- Python天天美味(27) - 网络编程起步(Socket发送消息)
- Python的网络编程(四)
- Python网络编程之绑定到外部主机