最近在linux下用到了gunicorn,做下记录

1.gunicorn是一个python Wsgi http server。Gunicorn使用prefork master-worker模型(在gunicorn中,master被称为arbiter),能够与各种wsgi web框架协作,我项目里用gunicorn配合Flask。

2.安装
我用Anaconda在liunx搭建了一个python虚拟环境,我在虚拟环境安装gunicorn

conda install gunicorn

3.下面是supervisor管理gunicorn的子进程配置文件说明:
给需要管理的子进程(程序)编写一个配置文件,放在/etc/supervisor.d/目录下,以.ini作为扩展名(每个进程的配置文件都可以单独分拆也可以把相关的脚本放一起)。如任意定义一个和脚本相关的项目名称的选项组(/etc/supervisord.d/test.conf):

#项目名
[program:testSend]
#脚本目录
directory=/home/xh/opt/test/sansa/
#脚本执行命令
command=/home/xh/anaconda3/envs/xh/bin/gunicorn -b xx.xx.xx.xx:10086 run:app#supervisor启动的时候是否随着同时启动,默认True
autostart=true
#当程序exit的时候,这个program不会自动重启,默认unexpected,设置子进程挂掉后自动重启的情况,有三个选项,false,unexpected和true。如果为false的时候,无论什
么情况下,都不会被重新启动,如果为unexpected,只有当进程的退出码不在下面的exitcodes里面定义的
autorestart=false
#这个选项是子进程启动多少秒之后,此时状态如果是running,则我们认为启动成功了。默认值为1
startsecs=1#脚本运行的用户身份
user = xh#日志输出
stderr_logfile=/tmp/blog_stderr.log
stdout_logfile=/tmp/blog_stdout.log
#把stderr重定向到stdout,默认 false
redirect_stderr = true
#stdout日志文件大小,默认 50MB
stdout_logfile_maxbytes = 20MB
#stdout日志文件备份数
stdout_logfile_backups = 20

4.配置完成以后,把supervisor服务启动起来,然后开启子进程配置配置的项目,详见:Supervisor-守护进程工具添加链接描述

Linux下gunicorn用法相关推荐

  1. Linux下wine用法

    Linux下wine用法 下面是wine的使用方法. 一.要在Linux下运行,wine是必不可少的,所以,请将wine安装到你的系统里. 二.将你的Windows所在的分区加载到某个目录.(本文假定 ...

  2. linux下rdesktop用法

    我自己用的参数rdesktop -g workarea -D -r clipboard:PRIMARYCLIPBOARD -a 16 -x lan 192.168.1.2 rdesktop是Linux ...

  3. linux下grep用法

    linux下grep用法 [root@kylin10 ~]# nl test.txt1 I love china2 I love chinese3 My lover is flower 1.grep ...

  4. linux下automake用法

    此篇为转载好文:原文链接: linux下automake用法 - Rixu Blog (日需博客) - C++博客 http://www.cppblog.com/gezidan/archive/201 ...

  5. linux下DNW用法

    1.把linux下的DNW应用程序放到linux下的/bin目录下 sudo chmod +x  /bin/dnw sudo chmod +s  /bin/dnw 2.插入USB线,用USB连接开发板 ...

  6. linux下snprintf用法,关于snprintf,_snprintf,_snprintf_s操作

    一.snprintf与snprintf_s的区别 众所周知,sprintf不能检查目标字符串的长度,可能造成众多安全问题,所以都会推荐使用snprintf. snprintf函数在C++11之前 并不 ...

  7. 在linux下nice用法,Linux下nice/renice命令小结

    1. nice命令 内核根据进程的nice值决定进程需要多少处理器时间. nice值的取值范围是是: -20到20. 一个具有-20 的 nice 值的进程有很高的优先级. 一个 nice 值为 20 ...

  8. linux下find用法 find -name *.so -exec ll {} \;

    原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://zhaizhenxing.blog.51cto.com/643480/134885 ...

  9. linux下rename用法--批量重命名

    Linux的rename 命令有两个版本,一个是C语言版本的,一个是Perl语言版本的,早期的Linux发行版基本上使用的是C语言版本的,现在已经很难见到C语言版本的了,由于历史原因,在Perl语言大 ...

最新文章

  1. git track远程分支
  2. 37 SD配置-销售凭证设置-分配项目类别
  3. 使用ZooKeeper
  4. 使用IDEA,利用SpringMVC框架建立HelloWorld项目
  5. 吸尘器上亚马逊要求UL1017测试报告怎么办
  6. 【Altium Designer】如何导出gerber文件
  7. Cocos技术派 | TS版属性声明详解
  8. Redis 缓存清理策略
  9. 巨象指纹浏览器的反追踪技术原理
  10. R语言笔记-分类变量列联表和独立性检验
  11. 如何创建Roadmap产品路线图
  12. 外网远程访问管家婆ERP进销存
  13. Visual Studio如何在一个解决方案下创建多个独立项目并单独运行
  14. 厦门八大美院墙绘 茶馆里的中国风墙绘壁画
  15. 学习笔记 | 建站流程
  16. 各省市县-人口与区域面积(1949-2019年)
  17. Window SendMessage,PostMessage分析
  18. 什么是响应式设计?如何实现?
  19. R语言独立性检验-基础
  20. css2和css1,CSS1,CSS2选择器详解

热门文章

  1. 解决-画图程序无法读取-无效的位图文件
  2. Spring中两种编程式事务管理
  3. 什么事MVC?什么是MVC!
  4. UE4 安卓手机launch报错
  5. 高德地图四:关键字搜索
  6. 计算机网络路由器作用是什么,路由器的作用是什么?
  7. Oracle 触发器(tigger)4
  8. 一文带你了解UI自动化测试框架
  9. 磕磕绊绊的全景相机之路
  10. 交换机光口和电口的相关知识