同步框架异步化改造—任务协程化 (二)

上一篇文章主要讲述协程原理:同步框架异步化改造—任务协程化 (一)

这篇文章主要讲述项目内部的实践,实践问题,具体问题具体分析。手动从0开始写一个协程调度功能,考虑的东西很多。对于当前的项目,时间不允许。考虑到内部项目是python代码,所以就使用了gevent调度。gevent的patch功能,patch掉底层的io接口。这样就能做到不改业务一行代码,化同步为异步调用。我们

首先提一下 greenlet库。这个库才是真正提供协程切换的接口库。其实,我们只需要greenlet库就可以,按照之前的ucontext协程调度的方式,用greenlet提供的switch接口进行切换。可以理解为,greenlet和ucontext协程库提供的功能是一样的:都是提供最基本的切换协程功能。怎么调度?还得自己去封装。而gevent库就提供了这一层封装。

详情见我的Github博客:

同步框架异步化改造—任务协程化 (二)

> 更多干货,关注公众号:奇伢云存储。原创不易,谢谢大家支持。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 参考资料 http://www.gevent.org/contents.html https://uwsgi-do...
    JunChow520阅读 16,978评论 0 10
  • 协程 阅读目录 一 引子 二 协程介绍 三 Greenlet模块 四 Gevent模块 引子 之前我们学习了线程、...
    go以恒阅读 737评论 0 1
  • 进程 线程 协程 异步 并发编程(不是并行)目前有四种方式:多进程、多线程、协程和异步。 多进程编程在python...
    hugoren阅读 5,011评论 1 4
  • 前述 进程 线程 协程 异步 并发编程(不是并行)目前有四种方式:多进程、多线程、协程和异步。 多进程编程在pyt...
    卷卷_麦芽呀阅读 21,653评论 0 6
  • 前述 进程 线程 协程 异步 并发编程(不是并行)目前有四种方式:多进程、多线程、协程和异步。 多进程编程在pyt...
    softlns阅读 6,349评论 2 24