2016-03-24 1 views
0

это мой текущий файл nginx.conf:имеют nginix назначить процесс одному соединению

user www-data;worker_processes 4; 
pid /run/nginx.pid; 

events { 
    #connections a worker can handle: ulimit -n 
    worker_connections 1024; 
    use epoll; 
    # multi_accept on; 
} 

http{ 

upstream pumpkins{ 
server localhost:8000; 
server localhost:8001; 
server localhost:8002; 
server localhost:8003; 
} 

proxy_next_upstream error; 

server{ 
listen 80; 
#listen localhost; 
#server_name localhost; 

# Allow file uploads 
client_max_body_size 50M; 

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://pumpkins; 
} 

} 

} 

Я не сделал никакого асинхронной кодирования в торнадо еще для обработки соединений одновременно, но мне было интересно, есть ли чтобы nginx назначил процесс подключению и оставался с этим соединением до тех пор, пока клиент не выйдет из системы или не отключится, или это что-то, что нужно сделать в торнадо/питоне? если да, то как мне это поделать?

ответ

1

Я думаю, что вам нужно session persistence

+0

ничего себе, это потрясающе. Это стоило бы $ 1900 в год ... Думаю. есть ли у вас опыт использования продолжительности сеанса? любым другим способом я мог бы реализовать его, если бы я не хотел использовать nginx? спасибо мужу. – stingMantis

+1

В моей компании мы используем haproxy, также предоставляем те же функции (аналогичные?). – Hang

0

так кажется, если вы не хотите использовать Nginx плюс и оплатить эту плату вы можете просто реализовать директиву ip_hash. Это заставляет nginx однозначно назначать каждому клиенту сервер на время их сеанса. протестированы локально и на моем производственном участке. больше информации here

 Смежные вопросы

  • Нет связанных вопросов^_^