阅读gunicorn源代码理解worker工作流程

python的gunicorn我想大家都知道,他是个能快速让web程序支持多并发的模块…  我想大家对于gunicorn不是很了解,这边就简单的说下gunicorn的工作流程… 其实实现gunicorn本身那套东西不太难,但是理解gunicorn那套东西,尤其是看懂其代码,那真是很不容易…   我现在也就紧紧看了他的主要的实现模块代码。 

文章继续跟进中,请到原文地址查看更新. http://xiaorui.cc/?p=2401

先简单说下,gunicorn的基本流程.

1. 首先他构建Master Worker的工作模型,Master负责调度Worker进程增删杀,而且他还会listen一个端口,或则是unix socket上。

2. 他用过PIPE传递listen注册上的fd文件描述符

3. 真正的worker做的事情很简单,紧紧是通过listening fd不断的accept接受请求而已.  

对于第三步,sync.py是这么实现的,如果是gevent thread的gunicorn worker最后要做的事情差不多,只是handler的动作换成了不同的worker调度器而已。 

先讲流程,过两天把gunicorn代码整理出来后,继续跟进…


对Golang感兴趣的朋友可以加群: 278517979 !!!
另外如果大家觉得文章对你有些作用! 如果想赏钱,可以用微信扫描下面的二维码, 感谢!
另外再次标注博客原地址  xiaorui.cc

发表评论

电子邮件地址不会被公开。 必填项已用*标注

您可以使用这些HTML标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">