nginx + uwsgi 높 은 병행 설정

3009 단어 nginxuwsgi
nginx + uwsgi 높 은 병행 설정
배치 하 다.
시스템 차원
  • TCP 최대 연결 수 수정
    echo 10000 > /proc/sys/net/core/somaxconn
    
  • TCP 연결 즉시 회수, 재 활용
    echo 1 > /proc/sys/net/ipv4/tcp_tw_reuse
    echo 1 > /proc/sys/net/ipv4/tcp_tw_recycle
    
  • nginx 설정
    worker_rlimit_nofile 65535; #  nginx                
    
    events {
    	worker_connections 20000;#            
    }
    
    location / {
            uwsgi_send_timeout 600;        #    uWSGI         ,      uWSGI         。
            uwsgi_connect_timeout 600;   #        uWSGI     。
            uwsgi_read_timeout 600;        #     uWSGI       ,       uWSGI       。
        }
    

    uwsgi 설정
    workers/processes = 24   #        
    listen = 1000  #    socket    。   100。          
    timeout = 60*60
    backlog = 10000
    

    문제 대응 설정
    (nginx error_log)
  • worker_rlimit_nofile 안 고 쳤 어 요:
    socket() failed (24: Too many open files) while connecting to upstream
    
  • worker_connections 변경 안 함:
    worker_connections are not enough while connecting to upstream
    
  • uwsgi listen 안 고 쳤 어
    connect() to unix:///root/TsingE-Backend/TsingeManager/uwsgi.sock failed (11: Resource temporarily unavailable) while connecting to upstream
    
  • 시간 초과 변경 안 함
    upstream timed out (110: Connection timed out) while reading response header from upstream
    
  • 좋은 웹페이지 즐겨찾기