Nginx 부하 균형 약술
왜 Nginx 를 사용 합 니까?
1. 역방향 대 리 를 실현 한다.역방향 프 록 시, 즉 프 록 시 서버 로 클 라 이언 트 요청 을 받 아들 여 내부 서버 에 전송 하고 서버 에서 얻 은 결 과 를 클 라 이언 트 에 게 되 돌려 줍 니 다.참고 로 프 록 시, 즉 클 라 이언 트 가 퍼 가기 프 록 시 를 설정 하여 다른 사이트 에 방문 하 는 것 입 니 다. 요청 은 프 록 시 서버 를 거 쳐 원본 서버 에서 응답 결 과 를 받 은 후에 클 라 이언 트 에 게 전달 합 니 다.요약 하면 프 록 시 클 라 이언 트 에 클 라 이언 트 를 숨 기 고 프 록 시 서버 를 반대 하 며 서버 를 숨 기 는 것 입 니 다.
2. 부하 균형 실현.데이터 부 하 를 서로 다른 서비스 단위 로 나 누 어 서버 의 높 은 사용 을 보장 합 니 다.Nginx 내장 정책 은 가중 폴 링 과 ip 가 있 습 니 다.hash, fair / url 도 지원 합 니 다.hash 등 제3자 확장 정책.
3. 동정 분 리 를 실현 한다.css / js / 그림 등 정적 파일 을 프 록 시 서버 에 맡 기 고 다른 동적 자원 은 프 록 시 서버 를 통 해 내부 서버 로 전송 하여 결 과 를 되 돌려 줍 니 다.동정 분 리 를 실현 하 는 동시에 부하 균형 에 도 어느 정도 참여 했다.
Nginx 설치 설정
1.
yum -y install make zlib zlib-devel gcc-c++ libtool openssl openssl-devel
2. PCRE,PCRE Ngnix Rewrite
#wgethttp://downloads.sourceforge.net/project/pcre/pcre/8.35/pcre-8.35.tar.gz
#tar zxvf pcre-8.35.tar.gz
#cd pcre-8.35
#./configure
#make && make install
3. Nginx
http://nginx.org/
#wgethttp://nginx.org/download/nginx-1.11.6.tar.gz
#tar zxvf nginx-1.11.6.tar.gz
#cd nginx-1.11.6
#./configure (--prefix=/usr/local/webserver/nginx--with-http_stub_status_module
--with-http_ssl_module--with-pcre=/usr/local/src/pcre-8.35)
#make && make install
#/usr/local/webserver/nginx/sbin/nginx -v nginx
: prefix,Nginx /usr/local :
/usr/local/nginx/sbin/nginx -t ngnix.conf
/usr/local/nginx/sbin/nginx Nginx
/usr/local/nginx/sbin/nginx -s stop Nginx
/usr/local/nginx/sbin/nginx -s reopen Nginx
/usr/local/nginx/sbin/nginx -s reload
프로필 예제:
#user nobody; #Nginx
worker_processes 1; # , CPU 2 CPU
(worker_processes auto;worker_cpu_affinity auto; cpu)
# :
#error_log logs/error.log;
#error_log logs/error.log notice;
#error_log logs/error.log info;
#pid( ):
#pid logs/nginx.pid;
# = worker_processes * worker_connections/4
events {
worker_connections 1024;#
}
http {
# mime , mime.type
include mime.types;
default_type application/octet-stream;
#( 。
$remote_addr $http_x_forwarded_for ip ;
$remote_user: ;
$time_local: ;
$request: url http ;
$status: ; 200,
$body_bytes_sent: ;
$http_referer: ;
$http_user_agent: ;
web , IP , $remote_add IP iP 。
http , x_forwarded_for , IP 。)
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';
# log_format , access_log ;
#access_log logs/access.log main;
sendfile on;
#tcp_nopush on;
#keepalive_timeout 0;
keepalive_timeout 65;
#gzip on;
upstream192.168.20.35 {
server 192.168.20.35:9001 weight=3 max_fails=2fail_timeout=30s;
server 192.168.20.35:9002 weight=3 max_fails=2fail_timeout=30s;
ip_hash;
}
server {
listen 8111;
server_name 192.168.20.35;
index index.jsp index.html index.htm;
#
root /home/lgip_fastdfs/apache-tomcat-7.0.73/webapps/ROOT;
location /
{
proxy_next_upstream http_502 http_504 error timeout invalid_header;
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_passhttp://192.168.20.35;
#expires 3d;
}
# nginx.conf upstream
location ~.*\.(php|jsp|cgi)?$
{
#root/home/lgip_fastdfs/apache-tomcat-7.0.73/webapps/ROOT/WEB-INF;
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_passhttp://192.168.20.35;
}
# Nginx , Nginx 。
location ~.*\.(html|htm|gif|jpg|jpeg|bmp|png|ico|txt|js|css)$
{
root/home/lgip_fastdfs/apache-tomcat-7.0.73/webapps/ROOT/WEB-INF;
#expires 3 , , ,
expires 3d;
}
# Nginx
access_log /home/lgip_fastdfs/data/logs/nginx_lgip/access.log main;
error_log /home/lgip_fastdfs/data/logs/nginx_lgip/error.log crit;
}
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.