Heim >Betrieb und Instandhaltung >Nginx >Unterstützt Nginx Sockets?

Unterstützt Nginx Sockets?

(*-*)浩
(*-*)浩Original
2019-06-10 16:44:235302Durchsuche

Es gibt eine Schnittstelle, die über einen Socket kommuniziert. Es gibt IP-Einschränkungen für den Zugriff auf den Peer-Server, daher müssen wir den Springboard-Computer verwenden, da dieser über die Berechtigung verfügt, auf den Peer-Server zuzugreifen. Nginx1.9 beginnt mit der Unterstützung der TCP-Layer-Weiterleitung, die über Stream implementiert wird, und Socket basiert ebenfalls auf TCP-Kommunikation.

Unterstützt Nginx Sockets?

Implementierungsprozess:

1. Nginx installieren, das Stream-Modul ist nicht standardmäßig installiert muss manuell Parameter hinzugefügt werden: –with-stream, wählen Sie nginx1.9 oder höher entsprechend Ihrer Systemversion aus.

2.nginx.conf-Konfiguration, siehe Beschreibung: ngx_stream_core_module

nginx.conf

user nginx;
worker_processes 1;
error_log /var/log/nginx/error.log warn;
pid /var/run/nginx.pid;
events {
worker_connections 1024;
}
http {
.................
}

# tcp层转发的配置文件夹

include /etc/nginx/tcp.d/*.conf;

Bitte beachten Sie, dass die Stream-Konfiguration kann nicht in http platziert werden, das heißt, es kann nicht in /etc/nginx/conf.d/ platziert werden, da der Stream über die TCP-Ebene und nicht über http weitergeleitet wird.

Wenn in http konfiguriert, wird beim Starten von nginx der folgende Fehler gemeldet:

nginx: [emerg] "server" directive is not allowed here

3. Erstellen Sie eine neue bss_num_30001.conf-Datei unter tcp.d mit dem folgenden Inhalt:

stream {
    # 添加socket转发的代理
    upstream bss_num_socket {
        hash $remote_addr consistent;
        # 转发的目的地址和端口
        server 130.51.11.33:19001 weight=5 max_fails=3 fail_timeout=30s;
    }

    # 提供转发的服务,即访问localhost:30001,会跳转至代理bss_num_socket指定的转发地址
    server {
       listen 30001;
       proxy_connect_timeout 1s;
       proxy_timeout 3s;
       proxy_pass bss_num_socket;
    }
}

4. Starten Sie nginx neu und greifen Sie auf localhost:30001 zu. Es wird zur von bss_num_socket angegebenen Weiterleitungsadresse 130.51.11.33:19001 gesprungen.

Weitere technische Artikel zum Thema Nginx finden Sie in der Spalte Nginx-Tutorial, um mehr zu erfahren!

Das obige ist der detaillierte Inhalt vonUnterstützt Nginx Sockets?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn