Python中实现异步的框架有很多,但核心思想大概是基于以下两种方法
twister
geventtwister
1、twister
twister的思想是封装异步操作,通过回调来操作。我们可以看到scrapy中中间请求的实现是twister方法。
scrapy.Request(url='xxx', callback=func)
通过传递封装好的请求,当框架帮我们完成请求后,会通过callback回调。如果你的请求很简单,没关系,你只需要回拨一次。如果你的请求比较复杂,那么你就会进入回调地狱(callback hell)
2、gevent
gevent 是一个使用完全同步编程模型的可扩展异步 I/O 框架。
所有的异步I/O都依赖于
相同的模式。不是代码如何运行,而是等待完成的地方。多路I/O操作需要统一处理,所以wait只出现在代码的一处。当事件触发时,异步系统需要恢复等待这个事件的代码块。
以上就是python实现异步的两个框架,希望对大家有所帮助。
更多
Python学习指路:
本文教程操作环境:windows7系统、Python 3.9.1,DELL G3电脑。
本文为原创文章,版权归知行编程网所有,欢迎分享本文,转载请保留出处!
你可能也喜欢
- ♥ python归并排序的实现原理12/31
- ♥ 如何使用python数计算算法?01/02
- ♥ Python3 文件(文件)方法12/27
- ♥ linux下如何卸载python09/05
- ♥ 如何在win7中安装python08/22
- ♥ python字典的工作原理11/03
内容反馈