首页 > 系统相关 >tornado + nginx 线上部署

tornado + nginx 线上部署

时间:2022-11-02 12:01:23浏览次数:45  
标签:www log tornado server nginx 线上 var true

为什么需要nginx

  • tornado 内置的web http server 功能受限
  • python的多线程 是解释器GIL的大锁 实际是一个线程运行
  • 充分利用多核能力

nginx

点击查看代码
user nginx;
worker_processes 5;
error_log /var/log/nginx/error.log;
pid /var/run/nginx.pid;
events {
    worker_connections 1024;
    use epoll;
}
proxy_next_upstream error;
    upstream tornadoes {
    server 127.0.0.1:8000;
    server 127.0.0.1:8001;
    server 127.0.0.1:8002;
    server 127.0.0.1:8003;
}
server {
    listen 80;
    server_name www.example.org *.example.org;
    location /static/ {
        root /var/www/static;
        if ($query_string) {
        expires max;
        }
    }
    location / {
        proxy_pass_header Server;
        proxy_set_header Host $http_host;
        proxy_redirect off;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Scheme $scheme;
        proxy_pass http://tornadoes;
    }
}

守护进程 supervisor

点击查看代码
[program:tornado-8000]
command=python /var/www/main.py --port=8000
directory=/var/www
user=www-data
autorestart=true
redirect_stderr=true
stdout_logfile=/var/log/tornado.log
loglevel=info

[program:tornado-8001]
command=python /var/www/main.py --port=8001
directory=/var/www
user=www-data
autorestart=true
redirect_stderr=true
stdout_logfile=/var/log/tornado.log
loglevel=info

[program:tornado-8002]
command=python /var/www/main.py --port=8001
directory=/var/www
user=www-data
autorestart=true
redirect_stderr=true
stdout_logfile=/var/log/tornado.log
loglevel=info

[program:tornado-8003]
command=python /var/www/main.py --port=8001
directory=/var/www
user=www-data
autorestart=true
redirect_stderr=true
stdout_logfile=/var/log/tornado.log
loglevel=info
tornado app.py
点击查看代码
package tornados

tornado.httpserver
import tornado.ioloop
import tornado.options
import tornado.web

from tornado.options import define, options


define("port", default = 8000, help = "run on the given port", type = int)

class IndexHandler(tornado.web.RequestHandler):
	def get(self):
		greeting = self.get_argument('greeting', 'Hello')
		self.write(greeting + ', friendly user!')

if __name__ == "__main__":
	tornado.options.parse_command_line()
	app = tornado.web.Application(handlers = [(r"/", IndexHandler)])
	http_server = tornado.httpserver.HTTPServer(app)
	http_server.listen(options.port)
	tornado.ioloop.IOLoop.instance().start()

标签:www,log,tornado,server,nginx,线上,var,true
From: https://www.cnblogs.com/guanchaoguo/p/16850600.html

相关文章

  • 关于 NGINX Kubernetes Gateway,你需要知道的 5 件事
    原文作者:IlyaKrutovofF5原文链接:​​​关于NGINXKubernetesGateway,你需要知道的5件事​​转载来源:NGINX官方网站在过去的几年里,F5NGINX帮助您成功走完了Kuberne......
  • HDC2022 开发者亮点抢先看,线上线下精彩活动等你探索!
    ......
  • 消防安全知识线上答题活动小程序-答题功能解读
    消防安全知识线上答题活动小程序-答题功能解读 通过答题来对消防知识进行宣传,起到对大家的教育作用。每人每天都有一次答题机会,适合长期性的学习,与知识传播。安全知识线......
  • nginx的域名重写和转发案例
    对url进行重写location=/tongyong_OTA_1.0.3.bin{rewrite^(.*)$http://36.133.87.223/lecode-server/lecode-dap-server/api/open/server/ota/ton......
  • nginx常用指令
    1.启动cdusr/local/nginx/sbin./nginx2.检查配置文件是否正确nginx-t-c/usr/local/nginx/conf/nginx.conf或者cd/usr/local/nginx/sbin./nginx-t3.......
  • 03周秀→线上小组
    第③周秀目录目录第③周秀目录scene1scene2scene3演员人物选定(A~I)精彩瞬间scene1Character/剧中人物Actor/演员表演亮点LENETTEABOY①CBOY②E......
  • Linux自动安装Nginx
    Nginx(发音同“engineX”)是异步框架的网页服务器,也可以用作反向代理、负载平衡器和HTTP缓存。该软件由俄罗斯程序员伊戈尔·赛索耶夫(ИгорьСысоев)开发并于......
  • ingress-nginx 配置例子
    文档说明:只记录关键地方;试验环境:linuxdebian11目标:自建K8S对外提供httphttps服务生成TLSkubectlcreate-ndefaultsecrettlscom-xiaoshuogeng-tls-cert-s......
  • Centos离线安装JDK+Tomcat+MySQL8.0+Nginx
    一、安装JDK注:以下命令环境在Xshell中进行。1、查询出系统自带的OpenJDK及版本rpm-qa|grepjdk2、如果显示已安装openjdk则对其进行卸载。#卸载rpm-e--nodeps......
  • 配置Nginx虚拟主机
    配置Nginx虚拟主机......