Nginx 로드 밸런싱을 사용하여 고성능 .NET 웹 애플리케이션 구축 2

WBOY
풀어 주다: 2016-08-08 09:32:54
원래의
1500명이 탐색했습니다.

"Nginx 로드 밸런싱을 사용하여 고성능 .NETweb 애플리케이션 구축 1" 기사에서 Nginx에 대한 사전 이해를 살펴보겠습니다. 아래에서는 Windows 플랫폼을 사용합니다. Nginx 데모 클러스터를 사용하여 웹 애플리케이션을 배포합니다.


1. Nginx 배포 패키지 다운로드

Nginx 공식 웹사이트로 이동하여 Windows 플랫폼용 Nginx 배포 패키지를 다운로드합니다. 현재 nginx-1.6.2 버전을 다운로드했습니다.


2. 서비스 시작 명령
시작: nginx.exe 시작
중지: nginx -s stop

다시 로드: nginx -s reload


3. 예시 구성
첫 번째 선택: 웹 애플리케이션을 iis에 배포하고 다른 컴퓨터에 배포한 다음 해당 IP와 포트 번호를 설정해야 합니다. 왜냐하면 이 컴퓨터는 효과를 시뮬레이션했기 때문입니다. 그래서 이 컴퓨터의 IIS에 2개의 웹 응용 프로그램을 배포했습니다. 첫 번째 웹 응용 프로그램은 localhost: 8011 포트에 배포되었으며 동시에 데모를 보기 위해 두 번째 응용 프로그램도 배포되었습니다. 결과적으로 우리는 WebForm1.aspx 페이지를 웹 애플리케이션 페이지로 표시했습니다. 실제로 시스템을 배포할 때 웹 애플리케이션 중 하나를 배포하기만 하면 됩니다. 아래와 같이 서버에 다른 컴퓨터가 있습니다.

웹 애플리케이션 1 주소: http://localhost:8011/WebForm1.aspx
웹 애플리케이션 2 주소: http://localhost:8012/WebForm1.aspx

(1) Nginx 서비스 시작

(2) Nginx 구성 항목을 수정합니다. 구체적인 구성 지침은 매개변수 설정부에서 설명한 후 서비스가 정상적으로 시작되는지 확인합니다.

(3) 접속 주소 http://localhost:8010/WebForm1.aspx 관찰 결과


(4) 이런 식으로 로드 밸런싱 효과를 시뮬레이션할 수 있습니다.

4. 기타 안내

(1) 도메인 이름 액세스 구성: 먼저 Nginx에 도메인 이름 설정을 추가해야 하고, 두 번째로 이 컴퓨터의 도메인 이름에 매핑되도록 127.0.0.1을 설정해야 합니다.

이러한 방식으로 다음과 같이 액세스할 수 있습니다. http://huangxiang:8010/WebForm1.aspx

(2) Ngnix에서 시작하는 프로세스 수를 구성합니다. 프로세스 중 프로세스 수의 변화에 ​​주목할 수 있습니다


5. 매개변수 설정

#定义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;
    #    }
    #}

}
로그인 후 복사



위 내용은 콘텐츠를 포함하여 고성능 .NET 웹 애플리케이션 II를 구축하기 위한 Nginx 로드 밸런싱의 사용을 소개합니다. PHP 튜토리얼에 관심이 있는 친구들에게 도움이 되기를 바랍니다.

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿