python实现异步的两种框架
Python实现异步的框架有很多,但是核心思想大概是基于下面两种方式
twister
geventtwister
1、twister
twister思想是将异步操作封装起来,通过回调的方式来操作,我们看scrapy里面中间请求的实现就是twister方式
scrapy.Request(url='xxx',callback=func)
通过传递封装的request,当框架帮我们请求完后,会通过callback进行回调,如果你的请求很简单那还好,只需要回调一次就可以,假如你的请求较复杂,那么你就会进入回调地狱(callbackhell)
2、gevent
gevent是一个使用完全同步编程模型的可扩展的异步I/O框架。
所有的异步I/O都依赖于同一种模式.它不在于代码如何运行,而在于在何处完成等待.多路I/O操作需要统一做等待处理,于是,等待只在代码中的一个地方出现.当事件触发的时候,异步系统需要恢复等待这个事件的代码块。
以上就是python实现异步的两种框架,希望能对大家有所帮助。更多Python学习教程请关注IT培训机构:千锋教育。