본문 바로가기
🕰️ 2024.03.19 16:21
Opcache 설정 설명
조회 수 297 추천 수 0 댓글 0

; Zend Opacache 활성화 여부 결정

opcache.enable=1

; PHP CLI 버전에서 Zend Opcache 활성화 여부 결정

opcache.enable_cli=1

; Opcache 공유 메모리 저장소 사이즈

opcache.memory_consumption=128

; 메모리에서 interned 문자열을 위해 사용할 메모리량

opcache.interned_strings_buffer=8

; Opcache 해쉬 테이블에서 가질수 있는 키값의 최대값(200~100000 사이에 값만 가질 수 있음)

opcache.max_accelerated_files=4000

; 공유 메모리 저장소 할당을 위해서 변화된 것들에 대해 얼마나 자주 파일 타임 스탬프를 체크(초단위)할지 ( 0은 늘 검사)

opcache.revalidate_freq=60

; 활성화 시 accelerated code 에 대해서 사용되어짐

opcache.fast_shutdown=1

; 활성화 시 Opcache는 현재 작업디렉토리를 스크립트 키에 추가하고, 같은 이름을 가진 파일들 사이에 가능한 충돌을 제거한다.

; 비활성화 시 성능이 향상되지만, 존재하는 애플리케이션이 깨질 수 있음.

opcache.use_cwd=1

; 비활성화 시, Opcache 를 수동으로 리셋해주거나, 파일시스템이 변한것에 대해 효과를 얻기위해서는 웹서버를 재시작 해야함.

opcache.validate_timestamps=1

; 재시작이 스케줄 될때까지 "wasted" 최대 메모리 비율

opcache.max_wasted_percentage=5

출처: https://jlblog.me/100 [JLBlog]

==========================================

4.2. php.ini에서 OPcache 설정

php.ini 파일을 열어보면 OPcache 관련해 앞에 주석 처리된 명령문들이 많이 있습니다.

이 명령문 중에서 상호 관련이 있는 변수는 opcache.memory_consumption, pcache.max_accelerated_files, opcache.max_wasted_percentage의 3가지로 서로 충돌이 나지 않토록 설정하는 게 관건으로 보입니다.

opcache.memory_consumption은 기본값이 64MB로 되어 있는데요.

메모리의 여유가 있다면 늘려주는 게 좋을 것 같습니다. 원래 256MB를 설정했는데,

OPcache 모니터링 프로그램으로 며칠 살펴보니 70MB이하로 사용되고 있어서 96MB로 최종 설정했습니다.

opcache.max_accelerated_files은 한번에 처리하는 캐시 파일 수 인데요.

이는 200에서 1,000,000사이의 값을 넣게 되어 있고 기본값은 2000입니다.

램에 여우가 있다면 기본보다 높이는게 좋겠죠. 저는 100,000으로 설정했습니다만

실제로 1,300개 정도 사용되고 있는 것으로 보아 개인 사이트라면 10,000정도면 충분할 것 같습니다.

opcache.max_wasted_percentage는 Opcache가 재시작을 해야할 시 버려야하는 비율을 정하는 것입니다.

기본값은 5%로 되어 있습니다. 일반적으로 기본보다 더 높여주는 것 같습니다.

opcache.revalidate_freq는 php소스 변경 확인 간격을 말하는데요.

개발자라면 이를 0으로 놓아 바로 바로 확인토록 하고, 일반인이라면 60 또는 180으로 설정합니다.

그외 일반적으로 꼭 하는 설정들은 아래에 적어 보았습니다.

opcache.enable=1 ; Opcache 사용여부 설정, 1일때 활성화 됨

opcache.interned_strings_buffer=8

opcache.max_accelerated_files=100,000 ; 최대 파일갯수 설정

opcache.revalidate_freq=180 ; php 소스 변경확인시간 60sec

opcache.validate_timestamps=2 ; php 소스 수정 확인

opcache.fast_shutdown=1

opcache.enable_cli=0 ; 명령행 버전의 PHP에서도 opcache 적용할지 여부

opcache.use_cwd=1 ;같은 이름을 가진 파일들사이에서 가능한 충돌 제거

4.3. OPcache 모니터링

이렇게 OPcache를 설정했으면 이 OPcache가 어떻게 작동하고 있는지 모니터링하고 혹시 수정할게 있는지 확인하는 게 좋을 것 같습니다.

이 모니터링 프로그램은 PHP’s Zend Opcache Config & Web Viewer 에서

세가지 프로그램을 소개하고 있는데요.

저는 이중에서 Opcache-Status by Rasmus Lerdorf를 설치해 사용하고 있습니다.

cd /var/www/example.com/ # 설치하고 싶은 디렉토리로 이동

wget https://raw.github.com/rlerdorf/opcache-status/master/opcache.php

설치 후 인터넷 브라우저에서

설치주소/opcache.php 명령으로 모니터링 프로그램을 볼 수 있습니다.

아래 이미지가 모니터링 프로그램으로 확인한 내용입니다.

5. 마무리하면서

이상으로 간단히 OPcache에 대해서 살펴보았습니다.

단일 사이트에서 OPcache는 굉장히 효율적인 툴로 보입니다.

더우기 올해 PHP가 7.x에서 8.0으로 업그레이드가 되면 더욱 유용할 것으로 보입니다.

저는 Page Caching은 FastCGI를 적용하고, PHP Script Cache는 여기서 설명한 OPcache를 적용하며,

데이타베이스 관련해 Memcached를 적용해 사용하고 있습니다.

지금까지 성과는 나름 만족스럽습니다.

FastCGI나 Memcached에 대해서는 아래 포스팅을 참조하시기 바랍니다.

출처 : https://happist.com/549007/opcache%EB%A5%BC-%ED%99%9C%EC%9A%A9%ED%95%9C-%EC%9B%8C%EB%93%9C%ED%94%84%EB%A0%88%EC%8A%A4-%EC%86%8D%EB%8F%84-%EC%B5%9C%EC%A0%81%ED%99%94-%EB%B0%A9%EC%95%88/


List of Articles
번호 분류 제목 조회 수 날짜
HOT글 팁/유용/추천 블로그의 도메인 권한(DA) 향상을 위한 SEO 최적화 콘텐츠 전략 686 2025.06.27
HOT글 잡담 토렌트 다운로드 멈추거나 느릴 때 쓸만한 트래커 목록 공유 부탁드려요 3 933 2025.06.26
공지 🚨(뉴비필독) 전체공지 & 포인트안내 14 27849 2024.11.04
공지 URL만 붙여넣으면 끝! 임베드 기능 22073 2025.01.21
157 히토미 https://misskey.io/ 특정 유저 주소는 다운 안되는 문제 736 2023.08.26
156 효율적인 웹 개발을 위한 10가지 Visual Studio Code 확장 file 335 2024.02.08
155 혼자 공부할 수 있는 프로그래밍 강의 링크 모음(국내) 812 2024.03.15
154 잡담 해외익 여긴 php 잘 쓰던데 이유가 뭘까 1 61 2024.08.11
153 팁/유용/추천 한국방송통신대학원 학생 커뮤니티 사이트 698 2025.06.27
152 팁/유용/추천 한국방송통신대학교 커뮤니티 사이트 주소 686 2025.06.27
151 잡담 프론트엔드 일 하는 익 있어?? 1 77 2024.08.11
150 잡담 풀스택 만드는 중인데 기능 하나 갖고 하루 끙끙거리는 듯 81 2024.08.11
149 Q/A 포트스캔 차단방법? 218 2025.01.27
148 하드웨어/네트워크 포트 스캐너(port scanner) 차단 (PSD) file 244 2025.01.27
147 특정 문자 삭제 프로그램 (일본어,중국어,한국어,영어가 섞여있을때 편리함) file 1606 2023.04.27
146 토이 프로젝트 만드는데 다들 얼마나 걸려 60 2024.08.11
145 토렌트 트래커 모음 111 2024.08.09
144 잡담 토렌트 다운로드 멈추거나 느릴 때 쓸만한 트래커 목록 공유 부탁드려요 3 933 2025.06.26
143 잡담 코틀린이랑 c++ 중에 뭘 깊게 공부해볼까.. 1 84 2024.08.11
142 코딩 하다 보면 실력 느니…???? 하.. 75 2024.08.11
141 잡담 컴공다니면서 느낀거 83 2024.08.11
140 취업하려는 공부는 적당히하자 700 2023.10.11
139 초봉 3600 너무 적나..? 71 2024.08.11
138 진짜 서버 만들었습니다 file 588 2024.03.09
137 제조사 맥 주소 확인 방법(How to check MAC address by manufacturer) 513 2023.08.31
136 잡담 접지가 되어 있는 콘센트와 접지가 되어 있지 않는 콘센트 구분하는 방법 file 211 2025.01.28
135 잡담 전산직으로 취업한 사람 있어? 89 2024.08.11
134 전공자인데 프론트지망이야 패캠 김민태 부캠 어떨까… 87 2024.08.11
133 자바 책 기본, 심화 하나씩 추천 부탁해!! 앱이랑 스프링 하려구 64 2024.08.11
132 잡담 임베디드sw 현직자 있어??? 제발 있어줘ㅠㅠ🥹 1 77 2024.08.11
131 잡담 인턴 면접보는데 내 바닥이 드러날까봐 무서워ㅠㅠ 80 2024.08.11
130 잡담 익들아 대외활동 신청 포폴에서 뭐 빼야할까? 포폴 첨이라 2 file 87 2024.08.11
129 이젠 병원에 UX개발 프로세스가 필요하다. file 409 2024.04.14
128 잡담 이산수학 책이나 강의 추천해줘ㅠ 103 2024.08.11
Board Pagination Prev 1 2 3 4 5 6 Next
/ 6