> 헤드라인 > 본문

PHP 높은 동시성 및 높은 트래픽 사이트 nginx 최적화

无忌哥哥
풀어 주다: 2018-06-27 14:53:24
원래의
2405명이 탐색했습니다.

저희 사이트는 현재 수천만 PV와 수백만 동시성을 처리할 수 있습니다. php+nginx 최적화에 대한 경험이 조금 있어서 기록을 남기도록 하겠습니다.

1.TCP 소켓 및 Unix 소켓

Unix 소켓은 TCP 소켓보다 더 나은 성능을 제공합니다(I/O 데이터 읽기 및 쓰기가 적고 컨텍스트 전환이 적기 때문).

upstream backend 
{ 
  server unix:/var/run/fastcgi.sock; 
  # server 127.0.0.1:8080; 
}
로그인 후 복사

2. access_log 비활성화 또는 최적화

대규모 트래픽으로 액세스하는 경우 액세스 로그가 매우 많은 양의 디스크를 읽고 쓰게 됩니다. 로깅이 필요하지 않은 경우 비활성화할 수 있습니다.

access_log off; 
log_not_found off;
로그인 후 복사

또는 버퍼링을 켜세요

access_log /var/log/nginx/access.log main buffer=32k;
로그인 후 복사

3. Gzip

gzip on;
gzip_min_length 1k;
gzip_buffers 4 16k;
gzip_http_version 1.0;
gzip_comp_level 2;
gzip_types text/plain text/css application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript;
gzip_vary on;
gzip_proxied expired no-cache no-store private auth;
gzip_disable "MSIE [1-6]\.";
로그인 후 복사


4. 출력 캐시 최적화

fastcgi_buffers 256 16k; 
fastcgi_buffer_size 128k; 
fastcgi_connect_timeout 3s; 
fastcgi_send_timeout 120s; 
fastcgi_read_timeout 120s; 
fastcgi_busy_buffers_size 256k; 
fastcgi_temp_file_write_size 256k;
로그인 후 복사

5. nginx는 멀티 스레드가 아닌 멀티 프로세스입니다. -관련 다음과 같이 구성을 최적화해야 합니다.

먼저 서버의 프로세서 수를 살펴보세요.

cat /proc/cpuinfo | grep processor
로그인 후 복사
그런 다음 작업자_프로세스를 설정하면 프로세스 수는 얻은 프로세서 수입니다. Worker_connections는 각 프로세스가 열 수 있는 최대 연결 수이며 늘릴 수 있습니다. 여기에 참조가 있습니다.

아아아아

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