Heim  >  Artikel  >  Backend-Entwicklung  >  Verwenden Sie den Nginx-Lastausgleich, um leistungsstarke .NET-Webanwendungen zu erstellen 2

Verwenden Sie den Nginx-Lastausgleich, um leistungsstarke .NET-Webanwendungen zu erstellen 2

WBOY
WBOYOriginal
2016-08-08 09:32:541501Durchsuche

Im Artikel „Verwenden des Nginx-Lastenausgleichs zum Erstellen leistungsstarker .NETweb-Anwendungen 1“ erhalten wir ein vorläufiges Verständnis von Nginx. Im Folgenden werden wir die Windows-Plattform verwenden Stellen Sie unsere Webanwendung mithilfe des Nginx-Democlusters bereit.


1. Laden Sie das Nginx-Bereitstellungspaket herunter

Gehen Sie zur offiziellen Nginx-Website, um ein Nginx-Bereitstellungspaket für die Windows-Plattform herunterzuladen. Derzeit habe ich die Version nginx-1.6.2 heruntergeladen.


2. Befehl zum Starten des Dienstes
Start: nginx.exe starten
Stopp: nginx -s stop

Neu laden: nginx -s reload


3. Beispielkonstruktion
Erste Wahl: Wir müssen unsere Webanwendung auf unserem IIS bereitstellen, sie auf verschiedenen Computern bereitstellen und die entsprechende IP- und Portnummer festlegen, da ich es bin Dieser Computer hat den Effekt simuliert, Daher habe ich zwei Webanwendungen auf dem IIS dieses Computers bereitgestellt. Die erste Webanwendung wurde auf dem Port localhost: 8012 bereitgestellt, und die zweite Anwendung wurde gleichzeitig auf dem Port localhost: 8012 bereitgestellt, um die Demonstration zu sehen Als Ergebnis haben wir die Seite WebForm1.aspx markiert, die als Seite der Webanwendung gekennzeichnet ist. Wenn wir das System bereitstellen, müssen wir dies nicht tun. Wir stellen einfach eine unserer Webanwendungen bereit verschiedene Maschinen auf dem Server, wie unten gezeigt.

Adresse der Webanwendung 1: http://localhost:8011/WebForm1.aspx
Adresse der Webanwendung 2: http://localhost:8012/WebForm1.aspx

(1) Nginx-Dienst starten

(2) Ändern Sie die Nginx-Konfigurationselemente. Für spezifische Konfigurationsanweisungen erklären wir diese in der Parametereinstellungsabteilung und überprüfen dann, ob der Dienst normal startet.

(3) Zugriffsadresse http://localhost:8010/WebForm1.aspx Beobachtungsergebnisse


(4) Auf diese Weise können wir den Lastausgleichseffekt simulieren, ok

4. Weitere Anweisungen

(1) Domänennamenzugriff konfigurieren: Zuerst müssen wir Domänennameneinstellungen in Nginx hinzufügen und zweitens müssen wir 127.0.0.1 festlegen, um es dem Domänennamen auf diesem Computer zuzuordnen

Auf diese Weise können wir wie folgt darauf zugreifen: http://huangxiang:8010/WebForm1.aspx

(2) Konfigurieren Sie die Anzahl der von Ngnix gestarteten Prozesse. Wir können auf Änderungen in der Anzahl der Prozesse während des Prozesses achten


5. Parametereinstellungen

#定义Nginx运行的用户和用户组
#user  nobody;
#Nginx进程数,建议和cpu总内核一致
worker_processes  2;

#error_log  logs/error.log;
#error_log  logs/error.log  notice;
#error_log  logs/error.log  info;

#pid        logs/nginx.pid;


events {
#定义单个进程的最大连接数(实际最大连接数要除以2)
    worker_connections  1024;
}

#定义http服务器
http {
    include       mime.types;#定义文件扩展名和文件类型映射表
    default_type  application/octet-stream;

    #log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
    #                  '$status $body_bytes_sent "$http_referer" '
    #                  '"$http_user_agent" "$http_x_forwarded_for"';

    #access_log  logs/access.log  main;

    sendfile        on;
    #tcp_nopush     on;

    #keepalive_timeout  0;
    keepalive_timeout  65;

    #gzip  on;


   #服务器的集群
    upstream  huangxiang.com {  #服务器集群名字
  		#server   172.16.21.13:8081 weight=1;#服务器配置   weight是权重的意思,权重越大,分配的概率越大。
		#server   192.168.1.186:8081 weight=1;
		#server   172.16.1.14:8081 weight=2;
		#server   172.16.1.15:8081 weight=1;
		#server   172.16.1.15:80 weight=1;		
		server    127.0.0.1:8011 weight=1;
		server    127.0.0.1:8012 weight=2;
	}	
#虚拟机主机配置
    server {
        listen       8010;#端口号
        server_name  localhost huangxiang.com;#域名可以有多个,多个用空格分开

        #charset koi8-r;

        #access_log  logs/host.access.log  main;

        #location / {
        #    root   html;
        #    index  index.html index.htm;
        #}
	location / {
            proxy_pass http://huangxiang.com;
            proxy_redirect default;
        }


        #error_page  404              /404.html;

        # redirect server error pages to the static page /50x.html
        #
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }

        # proxy the PHP scripts to Apache listening on 127.0.0.1:80
        #
        #location ~ \.php$ {
        #    proxy_pass   http://127.0.0.1;
        #}

        # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
        #
        #location ~ \.php$ {
        #    root           html;
        #    fastcgi_pass   127.0.0.1:9000;
        #    fastcgi_index  index.php;
        #    fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;
        #    include        fastcgi_params;
        #}

        # deny access to .htaccess files, if Apache's document root
        # concurs with nginx's one
        #
        #location ~ /\.ht {
        #    deny  all;
        #}
    }


    # another virtual host using mix of IP-, name-, and port-based configuration
    #
    #server {
    #    listen       8000;
    #    listen       somename:8080;
    #    server_name  somename  alias  another.alias;

    #    location / {
    #        root   html;
    #        index  index.html index.htm;
    #    }
    #}


    # HTTPS server
    #
    #server {
    #    listen       443 ssl;
    #    server_name  localhost;

    #    ssl_certificate      cert.pem;
    #    ssl_certificate_key  cert.key;

    #    ssl_session_cache    shared:SSL:1m;
    #    ssl_session_timeout  5m;

    #    ssl_ciphers  HIGH:!aNULL:!MD5;
    #    ssl_prefer_server_ciphers  on;

    #    location / {
    #        root   html;
    #        index  index.html index.htm;
    #    }
    #}

}



Das Obige stellt die Verwendung des Nginx-Lastausgleichs zum Erstellen leistungsstarker .NET-Webanwendungen II vor, einschließlich einiger Aspekte des Inhalts. Ich hoffe, dass es für Freunde hilfreich sein wird, die sich für PHP-Tutorials interessieren.

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