公司内部的python分享《美妙的多进程管理》

    圈子里有朋友问我在python下如何实现类gunicorn多进程管理.  Master Worker工作模型非常适合多任务环境,可以规范后端服务,动态的改变worker数,不怕内核的oom等.

    在新公司还没怎么分享过python,因为公司的python高手太多 !  不仅有看过python源码的ybb,有看过redis源码,反复提交pullrequest都被拒的伟哥,还有从django古老版本就开始折腾的大哥.    这次关于多进程管理的主题也不怎么高端,只为普及知识. 

文章时有更新,怕就文章误导大家,标注下原文地址,http://xiaorui.cc/?p=3133

PPT里的主要纲要:
  • supervisor vs gunicorn vs uwsgi
  • linux信号, unicorn的信号体系 
  • 孤儿进程 vs 僵尸进程的实现

  • nohup的源码实现,脱离终端控制的几种方法? 

  • daemon的实现,为什么需要两次fork ?

  • prefork是怎么一回事

  • 打造一个较完善的多进程管理轮子

下面是具体的功能点:

  • 用配置文件控制
  • uid权限
  • 规范进程名
  • daemon守候进程
  • 调整进程Add、Reduce
  • 调优配置 : 最大处理任务,是否线程、协程, timeout控制
  • 捕获各种信号,解决僵尸进程
  • fcntl lock
  • 传参获取服务状态,重启服务,开启,停止


已经把ppt扔到slideshare里,如果连接被墙,可以直接下载高清版本.  


pdf下载地址:

http://xiaorui.cc/processpdf.pdf


在线翻墙看的ppt:

美妙的多进程管理 from rfyiamcool


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

8 Responses

  1. 要视频 2016年6月2日 / 下午11:06

    视频?更新了么?

  2. 厉害 2016年5月14日 / 上午8:47

    棒棒的!

  3. 泥沙 2016年4月28日 / 上午11:18

    棒棒的!

  4. 代码 2016年4月24日 / 上午8:27

    有样例代码么

  5. 一发 2016年4月19日 / 上午7:48

    keynote?

  6. 记得 2016年4月17日 / 上午11:33

    我记得你开源过类似的实现模块吧

  7. 三夫 2016年4月15日 / 上午6:08

    有点意思!

  8. mix 2016年4月14日 / 上午6:39

    光看ppt就知道不错,峰云兄来我们心分享吧!

发表评论

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

您可以使用这些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="">