zoukankan      html  css  js  c++  java
  • tornado + supervisor + nginx + linux 亲身体验

    先说说思路

    一、安装这些东西,tornado, supervisor( sudo pip install supervisor  在linux 系统上), 安装 nginx  (sudo apt-get install nginx -y) 

    二、让supervior 和 已经写好的tornado 服务挂钩 

    用supervisor 来管理服务和进程

    在命令行里面使用。

    然后,再在 supervisord.conf 最后面添加这几行

     

    这里tornado center.py 的本地服务地址是8100,写在center.py 文件里面了。

    当然为了标准,我们可以添加这几行在这里面,用来产看进程id,还有进程log(unix标准要执行)

    然后,步骤是

     1)

    $ sudo supervisord

    2)

    $ sudo supervisorctl start all

    (当上述命令执行完毕后,系统会自动执行上面所添加的program:segm_cn)

    三、我们来配置nginx

    当我们安装完nginx后,我们可以通过

    $ sudo service nginx start

    来启动。

    而后,我们需要增加一个新的服务,这里比如说是

    tornado

    在 /etc/nginx/sites-availble 下新建一个tornado.conf 其内容看似:

    # this is the real tornado service                                                                                                                                      
    upstream tornado {                                                                                                                                                      
        server 127.0.0.1:8100;                                  # tornado 服务的本地地址,上面说过了是8100端口                                                                                                    
    }                                                                                                                                                                       
                                                                                                                                                                            
    server {                                                                                                                                                                
        listen   80;                                            # 监听互联网上的80 端口,然后转交给本地的 torando 即8100端口                                                                                                            
        root /home/software/segm_cn;                            # tornado 服务文件所在目录                                                                                                            
        index center.py index.html;                                                                                                                                         
        #index index.py index.html;                                                                                                                                         
                                                                                                                                                                            
        server_name server;                                                                                                                                                 
                                                                                                                                                                            
        location / {                                                                                                                                                        
            if (!-e $request_filename) {                                                                                                                                    
                rewrite ^/(.*)$ /center.py/$1 last;                                                                                                                         
            }                                                                                                                                                               
        }                                                                                                                                                                   
                                                                                                                                                                            
        #location ~ /center.py {                                                                                                                                           
        location ~ / {                               # 将所有请求,都转交给upstream使用                                                                                                                       
            proxy_pass_header Server;                                                                                                                                       
            proxy_set_header Host $http_host;                                                                                                                               
            proxy_set_header X-Real-IP $remote_addr;                                                                                                                        
            proxy_set_header X-Scheme $scheme;                                                                                                                              
            proxy_pass http://tornado;          # 这里是指向上面的upstream                                                                                                                            
        }                                                                                                                                                                   
    }      

    然后,

    $ sudo ln -s /etc/nginx/sites-available/tornado.conf /etc/nginx/sites-enabled/tornado.conf
    $ sudo service nginx reload
    $ sudo service nginx restart

    这时候,所有对服务器ip80端口的访问,全部都定向到本地服务的8100端口了。

    我们还可以查看一下supervisor的log服务,来查看到底是谁访问的,访问的一个什么程度。

    好了。很爽!!!

    我们分几个简单的步骤

  • 相关阅读:
    PHP“Cannot use object of type stdClass as array”
    JS简单循环遍历json数组的方法
    省市区、民族下拉列表框
    java 代码获取视频时长
    CentOs 相关
    曾经遇过的sql问题
    在线分享代码
    ssm 数据库连接池配置
    代码片段
    java 常见问题
  • 原文地址:https://www.cnblogs.com/spaceship9/p/3552942.html
Copyright © 2011-2022 走看看