Nginx 500 오류 복구 (too many open file, connection)

2281 단어 nginx500 오류
Nginx 에 500 오류 가 발생 했 습 니 다. 오류 메 시 지 는 Log 에서 만 찾 을 수 있 습 니 다. 다음 두 가지 상황 이 있 습 니 다.
socket() failed (24: Too many open files) while connecting to upstream
512 worker_connections are not enough while connecting to upstream
해결 방법 을 기록 합 니 다.
 
Nginx "너무 많은 열 린 파일" 복구
오류 메시지
2011/05/01 23:00:49 [alert] 7387#0: *6259768 socket() failed (24: Too many open files) while connecting to upstream, client: 123.123.123.123, server: www.example.com, request: "GET [[/]] HTTP/1.1", upstream: "fastcgi://127.0.0.1:1234", host: "www.example.com"
해법
$ulimit - n \ # 현재 시스템 설정 의 제한 보기 (ulimit - a \ # 모든 매개 변 수 를 볼 수 있 습 니 다)
1024

vim / etc / security / limits. conf \ # 이 파일 에서 nofile (nofile - max number of open files) 의 크기 를 설정 합 니 다.
\ # 다음 두 줄 추가 / 수정 * soft nofile 655360 * hard nofile 655360

ulimit - n \ # 로그 인 후 로그 인 하면 이 값 이 나타 납 니 다.
655360

Nginx "512 worker connections are not enough" 복구
오류 메시지
2011/05/01 23:21:21 [alert] 19973#0: *6325881 512 worker_connections are not enough while connecting to upstream, client: 123.123.123.123, server: www.example.com, request: "GET / HTTP/1.1", upstream: "fastcgi://127.0.0.1:1234", host: "www.example.com"
해법
/etc/nginx/nginx.conf
worker_connections  10240;

레 퍼 런 스 Nginx CoreModule
worker_processes 2; worker_rlimit_nofile 10240; events { # worker_connections 10240; }

Nginx 의 connection 이 증가 하면 전체 속도 가 많이 느 려 집 니 다. 주요 원인 은 pp - cgi 가 부족 하기 때문에 다음 과 같이 조정 해 야 합 니 다.
php-cgi was started with phpfcgid_children="10" and phpfcgid_requests="500" ab was run on another server, connect via a switch using GBit ethernet
이 설정 참고: PHP performance III -- Running nginx
vim /etc/nginx/nginx.conf
worker_connections 10240; worker_rlimit_nofile

vim /etc/init.d/php-fcgi
PHP_FCGI_CHILDREN=15 PHP_FCGI_MAX_REQUESTS = 1000 을 PHP 로 변경FCGI_CHILDREN=150 PHP_FCGI_MAX_REQUESTS=10240

위 글 의 phpfcgidstop (), 잘 썼 습 니 다. 필요 하면 사용 해 보 세 요.phpfcgid_stop() {
echo "Stopping $name."
pids=`pgrep php-cgi`
pkill php-cgi
wait_for_pids $pids
}

좋은 웹페이지 즐겨찾기