nginx 부하 균형, io 쓰기 최적화
2080 단어 nginx 부하 균형nginx 최적화
시스템: centos 5.7 64bit
서비스 구조: nginx -- > squid --- > 저장
현재 의 문제: 저녁 피크 의 단일 컴퓨터 트 래 픽 이 150 Mbit / s 서버 의 부하 로 40 - 50 까지 올 라 갑 니 다.
1. 부하 가 높 은 것 은 io 로 인 한 것 입 니 다. io 소프트웨어 로 분석 해 보 세 요. 주로 io 쓰기 작업 입 니 다. squid 명중률 이 80% 가 되면 읽 기 동작 이 쓰기 동작 보다 커 야 합 니 다. 아무리 생각해 도 이해 가 되 지 않 습 니 다.
dstat 명령 으로 대부분의 쓰기 동작 을 분석 한 것 은 nginx 가 일 으 킨 것 이 었 습 니 다. nginx 는 퍼 가기 만 했 을 뿐 cache 를 하지 않 았 습 니 다. 왜 이렇게 큰 쓰기 io 가 생 겼 습 니까?
인터넷 에서 nginx 관련 자 료 를 찾 았 습 니 다. 다음 과 같 습 니 다.
nginx 매번 request 는 proxy 로 컬 에서 캐 시 를 찾 아야 합 니 다. 없 을 때 만 실제 서버 를 요청 합 니 다. 사실 설정 에 proxy 를 설정 하지 않 았 습 니 다.stroe 와 같은 매개 변 수 는 그 자체 가 I / O 를 부하 해 야 하기 때문에 모두 Cache 가 proxy 에 도착 하면 진정한 목적 을 달성 하지 못 할 것 입 니 다. 게다가 Cache 는 작은 파일 이 아 닌 대량의 파일 에 적합 하지 않 습 니 다.
proxy_buffering
syntax: proxy_buffering on|off
default: proxy_buffering on
context: http, server, location
This directive activate response buffering of the proxied server.
If buffering is activated, then nginx assumes the answer of the proxied server as fast as possible, preserving it in the buffer, assigned by directive
proxy_buffer_size
and proxy_buffers
. If the response can not all be placed in memory, then parts of it will be written to disk.
If buffering is switched off, then the response is synchronously transferred to client immediately as it is received.
nginx do not attempt to count entire answer of the proxied server, maximum size of data, which nginx can accept from the server it is assigned by directive
proxy_buffer_size
. For Comet applications based on long-polling it is important to set proxy_buffering to off, otherwise the asynchronous response is buffered and the Comet does not work.
드디어 문제점 을 발 견 했 습 니 다. off 를 설치 한 후에 reload 를 하면 부하 가 50 에서 5 로 떨 어 집 니 다. 이것 도 너무 과장 되 어서 상상 할 수 없습니다.
단순히 부하 균형 을 잡 고 대 리 를 하지 않 는 다 면 이 항목 은 반드시 닫 아야 한다. 그렇지 않 으 면 불필요 한 소모 만 있 을 뿐이다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
nginx 부하 균형 설정 전재 및 친 측Nginx 부하 이퀄 라이저 의 장점 이 많 습 니 다. ② upstream 은 부하 균형 능력 을 가지 고 아래 의 기 계 를 자동 으로 판단 할 수 있 으 며 정상적으로 서 비 스 를 제공 하지 못 하 는 기 계...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.