Я использую следующую конфигурацию для своего сервера nginx:
upstream django {
server unix:///var/www/example.com/django/ws/django.socket;
}
upstream io_nodes {
ip_hash;
server 127.0.0.1:8080;
}
limit_req_zone $binary_remote_addr zone=one:100m rate=1000r/s;
server {
listen 80;
server_name example.com;
root /var/www/example.com;
location /static {
alias /var/www/example.com/media;
}
location / {
limit_req zone=one burst=500 nodelay;
uwsgi_pass django;
include /etc/nginx/uwsgi_params;
}
location /socket.io/ {
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $host;
proxy_http_version 1.1;
proxy_pass http://io_nodes;
}
}
Когда я отправляю запросы POST в / socket / message, сразу обрабатываются только 5 запросов, остальные будут отложены. Через некоторое время будут обработаны следующие 5 запросов и так далее. Я предполагаю, что это как-то связано с настройками limit_req, но установка его на действительно высокое значение не помогло. Так в чем может быть проблема?