我写了一个大批量逐行处理key.txt,然后在云端对object进行批量处理的脚本,拥有捕获异常然后存储对应errorKey的功能。
- 开始没有使用协程,速度非常慢,程序绝大多数时间都在等待网络I/O请求。【耗时1000个177s】
#一些其余的业务代码
#一些其余的业务代码
#一些其余的业务代码
def execUpdateContentType(keypath):
#一些其余的业务代码
if __name__ == "__main__":
execUpdateContentType('keys.txt')
- 然后引入了协程。如何让多个协程顺序读取内容呢?想了一下把读取过程抽象成了key的顺序生产过程,写了个Reader工厂类,解决了多个协程协作读取资源的问题【耗时1000个35s】
from gevent import monkey
monkey.patch_all()
#一些其余的业务代码
#一些其余的业务代码