Nginx Keepalive bei Verwendung eines UNIX-Sockets

Nginx Keepalive bei Verwendung eines UNIX-Sockets

Gibt es Vorteile oder eine Leistungssteigerung bei der Verwendung keepaliveauf einem Upstream, der einen UNIX-Socket als Server nutzt, zum Beispiel:

upstream test {
    server unix:/tmp/test.sock;
    keepalive 60;
}

server {
    listen 80 default_server;
    listen [::]:80 default_server;
    server_name _;

    location / {
        proxy_pass http://test;
        proxy_http_version 1.1;  
        proxy_redirect off;
        proxy_set_header Host $http_host;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Real-IP $remote_addr;
    }
}

Meines Wissens gibt es bei der Verwendung eines UNIX-Sockets keinen TCP-Drei-Wege-Handshake. Deshalb keepalive 60;gelten die Angaben im Beispiel nicht. Ist das richtig?

Antwort1

UNIX-Sockets sind immer noch Verbindungen, daherNginx-Keepaliveist ein Cache davon, und es spielt keine Rolle, was auf den unteren Ebenen passiert.

Keepalive ist hier nicht dasselbe wie viele andere Tools/Dienste, bei denen etwas gesendet/empfangen wird, um die Verbindung aufrechtzuerhalten.

verwandte Informationen