리눅스 ---------- Nginx의 성능 최적화

엔터프라이즈 웹 아키텍처 최적화 {이 게시물 마 잉주 막시밀리안 Kalbfell 배울}

사례 I :
역할 : 소스 IP 액세스 제한 사이트
최고의 시나리오 : 내부 웹 사이트 또는 악의적 인 공격 IP가 나타납니다 엑스트라 넷 사이트에 노출
위치 / {
루트 HTML / 블로그,
인덱스의 index.php있는 index.html index.htm으로,
10.0.0.1을 거부 # ###의 IP를 추가해야합니다 거부, 허용 거부, 그렇지 않으면 무한 루프의 해가 될 것입니다.
모두 허용; ### 모두 모두 금지 할 수
}

사례 II : <오류 코드 페이지 최적화>
효과 : 적절하게 요청을 처리 할 수 없습니다 비즈니스 페이지 오류가 덜 친화적 인 기본 오류 페이지의 일부를 반환합니다. (예를 들면, 404,500,5002 등). 오류 페이지가 우아한 표시 할 수 있습니다
최고의 시나리오 : 같은 레코드 모드 할 수있는 웹 사이트 라이브 방송의 피크 때와 같은 전기 공급 업체 홍보 활동,
서버는 {
청취를 80;
서버 _ www.douyu.com,
위치 / {
루트 HTML /를 WWW;
index.html을 index.htm을 인덱스;
error_page 400 403 404 405 408 410 411 412 413 414 415 http://bak.douyu.com # 404, 에러가 소정의 URL로의 점프가 발생 될 때 등을 HTTP를 // BAK 사용자에게 표시 .douyu.com 페이지에서 URL은 일반적으로 (도 아끼지) 사용할 수있는 추가 기업의 주소입니다 .
/usr/local/nginx/logs/bbs_access.log commonlog ACCESS_LOG;
}
}

사례 3 :
역할 : 동시 웹 트래픽의 수와 붕괴 사이트를 방지하기 위해 입구를 제한하는
등의 전기 공급 업체 및 (등, 11 번 12 번) 프로모션, 해커 공격 (DDOS, CC)을 방지 할 때와 외국 노출 사이트를 : 최고의 시나리오 즉시 패배 높은 동시성이다.

limit_conn_zone 방식 (클라이언트 측 제한의 수, 하나의 IP 효과)
HTTP {
limit_conn_zone의 binary_remote_addr입니다 $ = 존 하나 : 10m;
서버
{...
하나는 10 limit_conn, ### 동시 클라이언트 연결 만 10 할 수있다, 반대로 (뿐만 아니라 단일 위치에 대한 힘의 위치에 대한 전체 서비스에 적용 할 수있다) (503)를 반환
}} ......

limit_req_zone 모드 (제한 "리키 버킷"방법 클라이언트 속도, 단일 IP의 역할)
HTTP는 {
limit_req_zone의 $의 binary_remote_addr는 지역 = req_one : 비율 = 10m LR / S, 각 주소 수단 당 ### = 속도 LR은 / S 오직 하나 개의 요청
서버
{...
존 = req_one 버스트 = 120 limit_req, 토큰 버킷 (120) = ### 버스트 토큰 만 초마다 새로운 토큰, 토큰 (120)을 보내 첨가 후, 추가로 (503)는 요청을 반환한다 ..
...}}

ngx_http_upstream_module (백엔드 제한)
XXXX {업스트림
서버 127.0.0.1:8080 MAX_CONNS = 10; 동시 백엔드 처리부 ###의 수 (작은 간격을 가질 수도 동시의 실제 번호 10하지만 무시할) (10)이며,
서버 127.0 .0.1 : 8081 MAX_CONNS = 10;
}

추가 :
AB 도구 설치 단계
-y 냠은 ### 4월 폴더의 유틸리티 - 냠-에 대한 의존도를 장착 설치 유틸
냠 -Y하여 아파치를 ### 설치 설치 - AB 도구 명령
./ab -C (50) -n 1000 의를 http://127.0.0.1 /index.html이 ### - C 50 초 50 -n 1,000 동시에 요청 1000 총 송신

추천

출처www.cnblogs.com/wangchengshi/p/10966774.html