首页 > 系统相关 >gunicorn dango nginx 实现同时处理并发请求

gunicorn dango nginx 实现同时处理并发请求

时间:2023-09-26 17:55:20浏览次数:46  
标签:gunicorn .. worker nginx dango 6000 cmdb log

项目是采用 gunicorn dango nginx 方式部署的。

gunicorn.py采用如下方式配置,

workers = 1
bind = '0.0.0.0:8000'
backlog = 2048
timeout = 6000
keepalive = 6000
errorlog = '../error.log'
loglevel = 'info'
logFile = '../sys.log'
accesslog = '../access.log'
worker_class = 'gthread'
worker_connections = 1000

/etc/systemd/system/cmdb.service

[root@localhost system]# cat cmdb.service 
[Unit]
Description=cmdb
After=network.target

[Service]
User=root
Group=root
Environment="APP_ENV=prd"
WorkingDirectory=/data/cmdb/
ExecStart=/usr/local/bin/gunicorn  cmdb.wsgi:application -c  /data/cmdb/gunicorn.py

[Install]
WantedBy=multi-user.target

之后启动systemctl start cmdb。程序没问题,有问题的地方是有一个耗时很长的同步任务,会导致页面,程序接口都卡着。就很好奇,gunicorn不就是异步的么,难道不能处理类似的并发请求?

经过一番折腾,python - 如何让 Flask/Gunicorn 处理同一路由的并发请求?      gunicorn使用

 

解决办法:

加上threads就解决了

把gunicorn.py 改下,重启systemctl restart cmdb,完美解决。

workers = 1
bind = '0.0.0.0:8000'
backlog = 2048
timeout = 6000
keepalive = 6000
errorlog = '../error.log'
loglevel = 'info'
logFile = '../sys.log'
accesslog = '../access.log'
worker_class = 'gthread'
worker_connections = 1000
threads = 2

 

标签:gunicorn,..,worker,nginx,dango,6000,cmdb,log
From: https://www.cnblogs.com/sdadx/p/17730834.html

相关文章

  • 在CentOS系统中安装Nginx
    以下是在CentOS系统中安装Nginx的步骤:1.更新系统软件包:sudoyumupdate2.安装EPEL存储库: sudoyuminstallepel-release3.安装Nginx:sudoyuminstallnginx4.启动Nginx服务:sudosystemctlstartnginx5.设置Nginx服务自启动:sudosystemctlenablenginx6.验证Nginx......
  • Windos Nginx开发准备
    1.下载打开nginx.conf#Windows修改第一处log_formatmain'$remote_addr-$remote_user[$time_local]"$request"''$status$body_bytes_sent"$http_referer"''&qu......
  • nginx日志分析: 每小时请求量最高的IP
    按小时来统计,当前指定日志的每小时最高流量的前10个IP,并显示出请求的状态码.nginx.conf中配置的日志格式为:  log_format main '$remote_addr-$remote_user[$time_local]"$request"'           '$status$body_bytes_sent"$http_refere......
  • nginx-clojure nginx 1.25.2 版本docker 镜像
    主要是测试下nginx-clojure有nginx1.25.2的兼容性,顺便基于原有的构建弄一个方便测试的debug版本的镜像构建构建命令实际结合业务修改下./configure--prefix=--sbin-path=nginx--conf-path=conf/nginx.conf--error-log-path=logs/error.log--http-log-path......
  • centos配置nginx防盗链
    一、全站的防盗链方法在sudovi/etc/nginx/conf.d/default.conf(nginx安装方式不一样,配置文件位置也不一样) 文件要添加防盗链的server段里添加下面的代码:location~.*\.(gif|jpg|jpeg|png|bmp|swf)${valid_referersnoneblocked192.168.10.111;#改成自己的if($......
  • nginx服务器,从access_log里面提取需要的数据
    #!/bin/bash#author:xxxstart_time=`date+'%d/%b/%Y:%H:00:00'-d'-1hours'`end_time=`date+'%d/%b/%Y:%H:59:59'-d'-1hours'`#echo$start_time#echo$end_time#每小时运行一次#cat/data/log/nginx/xxx.com|grep'......
  • nginx: The plain HTTP request was sent to HTTPS port
    问题描述TheplainHTTPrequestwassenttoHTTPSport当访问用http时则报错。用https时不报错。检查配置:server{listen80ssl;server_namehngj.zxynyxxx.cn;ssl_certificate/usr/local/nginx/cert/hngj.zxynyxxx.cn.pem;ssl_certificate_key/usr......
  • Nginx惊群现象的两种解决办法
    惊群现象:惊群现象是指由多个worker进程监听同一个Socket事件时,当事件发生时,相关的所有进程被惊醒,但最终只能有一个进程对该事件进行处理,其他进程会重新休眠,从而导致系统资源的浪费和系统性能的下降。惊群包含accept惊群和epoll惊群。惊群的本质:睡眠和唤醒问题,属于典型的观察者模......
  • nginx+keepalived 配置高可用
     1.安装keepalived官网下载最新版本进行安装下载:https://keepalived.org解压:tar-xzvfkeepalived-2.2.8.tar.gz进入目录运行./configure--prefix=/usr/local/keepalived--sysconf=/etc如果运行有报错,请根据提示安装对应的组件make&&makeinstall 安装完成后加入......
  • nginx默认配置
    usernginx;worker_processesauto;error_log/var/log/nginx/error.log;pid/run/nginx.pid;include/usr/share/nginx/modules/*.conf;events{ worker_connections1024;}http{ log_formatmain '$remote_addr-$remote_user[$time_local]"$re......