>  기사  >  백엔드 개발  >  PHP의 높은 부하에 대한 해결책은 무엇입니까

PHP의 높은 부하에 대한 해결책은 무엇입니까

爱喝马黛茶的安东尼
爱喝马黛茶的安东尼원래의
2019-08-28 16:51:244526검색

PHP의 높은 부하에 대한 해결책은 무엇입니까

php 고부하 솔루션:

FastCGI를 통해 PHP-FPM을 사용하여 고부하 웹사이트를 실행할 때 다음 팁이 유용할 수 있습니다. )

고부하 웹사이트가 PHP-FPM을 사용하여 관리하는 경우 FastCGI, 이 팁이 도움이 될 수 있습니다.)

1. PHP 모듈을 가능한 한 적게 컴파일하세요. 간단한 것이 가장 좋습니다(빠름).

가능한 한 적은 수의 PHP 모듈을 설치하세요. 가장 간단한 것이 가장 좋습니다(빠름).

2. PHP FastCGI 하위 수를 100개 이상으로 늘립니다. 때로는 200개도 괜찮습니다(4GB 메모리 서버에서).

4G 메모리가 있는 서버에서는 PHP FastCGI 하위 수를 100개 이상으로 조정하세요. 최대 200.

참고: 내 1g 테스트 시스템의 경우 64가 가장 좋습니다. 최고의 값을 얻으려면 스트레스 테스트를 사용하는 것이 좋습니다

3. SOCKET PHP FastCGI를 사용하고 Linux의 경우 /dev/shm에 넣습니다.

소켓을 사용하세요. 연결 FastCGI, Linux 운영 체제는 /dev/shm에 배치될 수 있습니다.

관련 권장 사항: "PHP 시작 튜토리얼"

참고: php-fpm.cnf에서 /tmp/nginx.socket를 설정하여 FastCGI에 연결합니다. 소켓 예, /dev/shm은 메모리 파일 시스템이므로 메모리에 배치하면 확실히 더 빨라집니다. 일관성을 유지하려면 지금 nginx의 구성을 수정해야 합니다.

위치 ~ .*.(php|php5)?$

{

#Nginx와 FastCGI 간의 통신 방식을 TCP에서 Unix Socket으로 변경합니다. TCP는 동시 액세스가 많은 경우 Unix 소켓보다 안정적이지만 Unix 소켓은 TCP보다 빠릅니다. 다음 명령을 사용하여 Linux "최대 열린 파일"을 늘립니다(루트여야 함):

# echo 'ulimit -HSn 65536' >> /etc/profile

# echo 'ulimit -HSn 65536 >> etc/rc.local

# source /etc/profile

Linux 커널에서 열리는 파일 수를 늘리려면 다음 명령을 사용할 수 있습니다(루트 계정이어야 함)

echo 'ulimit -HSn 65536′ > > /etc/profile

echo 'ulimit -HSn 65536' >> /etc/rc.local

source /etc/profile

참고: /etc/rc.local을 수정하고 ulimit -SHn 51200을 추가했습니다.

5. PHP-FPM 열린 파일 설명을 늘립니다. rlimit:

# vi /path/to/php-fpm.conf

1024

Change를 찾습니다. 1024~4096 이상의 숫자입니다.

PHP-FPM을 다시 시작합니다.

PHP-FPM 열린 파일 설명자 제한을 늘립니다.

# vi /path/to/php-fpm.conf

Find "1024

1024를 4096 이상으로 변경하세요.

PHP-FPM을 다시 시작하세요.

6. eAccelerator, XCache와 같은 PHP 코드 가속기를 사용하고 Linux에서는 "cache_dir"을 /dev/shm으로 설정합니다.

eAccelerator, dev/shm과 같은 PHP 코드 가속기를 사용합니다.

위 내용은 PHP의 높은 부하에 대한 해결책은 무엇입니까의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.