본문 바로가기

단축키

Prev이전 문서

Next다음 문서

단축키

Prev이전 문서

Next다음 문서

 

검은색 볼드 처리된 부분이 설정값입니다

php.ini 파일내에 설정값이 들어있습니다.

찾기 어려우니 컨트롤+F 를 눌러서 opcache를 검색하시면 바로 첫줄이 나옵니다.

 


 

 

당신은 얼마나 오랜 시간 동안 문서를 읽는 것을 보았는가? 예나 실제 사례 연구없이 설정이 실제로 무엇을하는지 전혀 알지 못한다.

" opcache.memory_consumption" 무엇을 의미 하는지 이해 하지만, 누가 그것을 설정할지를 누가 압니까? 32가 너무 많습니까? 너무 작은? 도대체 누구가 알고 있는지, Google에 아무것도 나타나지 않아서, 당신은 당신의 용기와 함께 간다.

그러나 당신의 직감이 틀린 때는 어떨까요? 추측에 업타임을 걸고 싶습니까?

나 아니야.

나는 광적인 사람처럼 연구하는 습관이있다. 3 시간 후에 PHP 소스 코드를 파고 들기 때문에 이상한 환경을 찾기 시작할 것입니다.

이 지식을 낭비하는 대신, 나는 그것을 당신과 공유하고 싶습니다. Zend Optimizer를위한 최고의 실제 세계 설정을 알아 내야 만했습니다.

이 설정은 하루에 1 억 1,700 만 건의 HTTP 요청을 처리하는 내 앱 중 하나의 php.ini 파일에서 바로 가져온 것입니다. 나는 각자가하는 일과 왜 중요한지를 설명하고 설정을 위해 그것을 조정할 수 있습니다.

opcache.revalidate_freq- 기본적으로 코드 캐시가 만료되는 빈도 (초)를 지정하고 코드가 변경되었는지 확인하십시오. 0은 매 요청마다 PHP 코드를 검사한다는 것을 의미합니다 (많은 stat 시스템 호출을 추가합니다). 개발 환경에서 0으로 설정하십시오. 생산은 다음 설정 때문에 중요하지 않습니다.

opcache.validate_timestamps -이 옵션을 활성화하면 PHP는 opcache.revalidate_freq 값 당 파일 타임 스탬프를 확인합니다.

비활성화 된 경우 opcache.revaliate_freq가 무시되고 PHP 파일에서 업데이트 된 코드를 확인하지 않습니다. 따라서 코드를 수정하면 PHP를 다시 시작하거나 다시로드 할 때까지 변경 사항이 실제로 실행되지 않습니다 (kill -SIGUSR2를 사용하여 다시로드해야 함).

예, 엉덩이에 통증이 있지만 사용해야합니다. 왜? 코드를 업데이트하거나 공개하는 동안 새 코드 파일이 이전 코드 파일과 섞일 수 있습니다. 결과는 알 수 없습니다. 지옥처럼 안전하지 않습니다.

opcache.max_accelerated_files- 한 번에 메모리에 얼마나 많은 PHP 파일을 저장할 수 있는지 제어합니다. 프로젝트에 당신이 설정 한 것보다 적은 파일이있는 것이 중요합니다. 내 코드베이스에는 ~ 6000 개의 파일이 있으므로 maxaccelerated 파일에는 소수의 7963을 사용합니다.

" find . -type f -print | grep php | wc -l"을 실행 하면 코드베이스의 파일 수를 빠르게 계산할 수 있습니다 .

opcache.memory_consumption- 기본값은 64MB이고 코드가 많아서 192MB로 설정했습니다. opcachegetstatus () 함수를 사용하여 메모리 opcache가 소비하는 양과 금액을 늘려야하는지 여부를 알 수 있습니다 (다음 주에 더 많이).

opcache.interned_strings_buffer- 0 문서처럼 예쁜 설정. PHP는 성능 향상을 위해 string interning이라는 기술을 사용합니다. 예를 들어 코드에 "foobar"문자열이 1000 번있는 경우 내부적으로 PHP는이 문자열에 대해 1 개의 불변 변수를 저장하고 다른 문자열에 포인터를 사용합니다 999 번 사용하십시오. 시원한. 이 설정은 각각의 단일 php-fpm 프로세스에 대해 이러한 불변 문자열 풀이 아닌 다음 레벨로 이동합니다.이 설정은 모든 php-fpm 프로세스에서이 설정을 공유합니다. 특히 대규모 응용 프로그램에서 메모리를 절약하고 성능을 향상시킵니다.

값은 메가 바이트 단위로 설정되므로 16MB의 경우 "16"으로 설정하십시오. 기본값은 4MB입니다.

opcache.fast_shutdown- 유용한 문서가없는 또 다른 재미있는 설정. "더 빠른 종료를 허용합니다." 오, 그래. 그게 날 도와 줬어. 이것이 실제로하는 것은 단일 요청이 끝날 때 코드에서 해체자를 호출하여 응답 속도를 높이고 PHP 작업자를 재사용하여 다음에 들어오는 요청을 더 빨리 준비 할 수있는 더 빠른 메커니즘을 제공하는 것입니다. 1로 설정하고 전원을 켭니다.

 

 

 

 

 

TL; DR-

php.ini에

opcache.revalidate_freq=0
opcache.validate_timestamps=0 (comment this out in your dev environment)
opcache.max_accelerated_files=7963
opcache.memory_consumption=192
opcache.interned_strings_buffer=16
opcache.fast_shutdown=1

 

 

 

 

 




List of Articles
번호 분류 제목 글쓴이 조회 수 날짜
공지 덕질 공통 이용규칙 및 안내 (업데이트중+ 2024-04-13) 😀컴덕824 5219 2024.04.14
공지 1000P를 모으면 다이소 상품권 1000원을 신청할 수 있습니다. file Private 5207 2024.02.14
5309 일반 엔비디아는 RTX4천세대를 보호하기 위해 수십억 유로를 지불함. file 😀컴덕036 5 2022.01.01
5308 일반 에픽게임즈) 툼레이더 트릴로지 무료배포 ~ 1/7 01시까지 😀컴덕557 5 2022.01.01
5307 일반 새해가 밝았으니 😀컴덕181 5 2022.01.02
5306 일반 슬프다 연말인데.. 😀컴덕688 6 2022.01.01
5305 일반 새해복 많이 받으십시오~~~ 😀컴덕091 6 2022.01.02
5304 일반 nvme ssd 1tb 구매희망합니다. 😀컴덕759 7 2022.01.01
5303 일반 PCIe 3.0 지원 메인보드에선 gen4 ssd 필요없겠죠? 😀컴덕024 7 2022.01.01
5302 일반 요번 컴터 업글 쓰면서 3열 짭수 첨 써봤는데 😀컴덕619 7 2022.01.01
5301 일반 코인하는 애들 내꺼 3080 안 사주노 😀컴덕841 7 2022.01.01
5300 일반 새해복 많이 받으세요 😀컴덕411 7 2022.01.01
5299 일반 이 개같은 회사 상여를 준다는 거야 안준다는거야 모니터 째리고있는데 😀컴덕390 7 2022.01.01
5298 일반 디갤 순위 많이 떨어졌네 😀컴덕615 7 2022.01.02
5297 일반 니들 컴터 사서 부품박스 버림? 😀컴덕141 7 2022.01.02
5296 일반 키보드 ㅊㅊ좀 😀컴덕128 7 2022.01.02
5295 일반 갤럭시S22 노트 브랜딩은 취소 울트라 브랜딩 내부 확정 😀컴덕후084 7 2022.01.02
5294 일반 아 글구 맥 무선마우스 잘됨 😀컴덕553 7 2022.01.03
5293 일반 윈도우 10 home fpp 질문입니다 😀컴덕582 7 2022.01.03
5292 일반 마우스 싼마이로 로지텍 G304 무선 괜찮나요? 😀컴덕385 7 2022.01.03
5291 일반 ddr4 시금치 램 8기가(2666) 1개 구해봅니다 😀컴덕247 7 2022.01.03
5290 질문 100w 충전기로 문제 안생길까요?? 😀컴덕1842 7 2024.06.01
목록
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 266 Next
/ 266