Reverse proxy tuning

Artur nginx at
Fri Jun 10 08:08:14 UTC 2016

Hello !

I have a nginx reverse proxy http/https for a node.js application with
websockets (an extract of the nginx config follows).

I would like to know if there is a way to :

- force nginx to retry connection to the same upstream if there is any
problem with the initial request to the upstream (timeout,
reading/writing timeouts, ...)

- do not blacklist an upstream if any error occurs

- do not retry on another upstream

- adjust timeouts on communications between nginx and upstreams
(connexion, read, write, ...)

I tested some parameters in the 'tests' block below but i'm not sure
that there is any other paramater I can play with.

http {
    upstream application {

server {
        location /nodejs/application/ {
                proxy_pass http://application;
                proxy_redirect off; 

                # prevents 502 bad gateway error
                proxy_buffers 8 32k;
                proxy_buffer_size 64k;

                # enables WS support
                proxy_http_version 1.1;
                proxy_set_header Upgrade $http_upgrade;
                proxy_set_header Connection $connection_upgrade;

                # tests
                proxy_connect_timeout 75s;
                proxy_read_timeout 300s;
                proxy_send_timeout 300s;
                proxy_next_upstream off;

Thank you for your feedback.


Best regards,

More information about the nginx mailing list