PHP7에서 도입된 OPCACHE보다 더욱 발전된 형태인 JIT 컴파일러를 사용하는 방법입니다.

 

저는 현재 PHP8 + 라이믹스 2.0 + JIT 컴파일러를 사용하여 사이트를 운영중에 있고, 속도가 훨씬 빨라진 것을 체감할 수 있었습니다.

 

PHP8을 설치시에 기본적으로는 활성화 되어있지 않고, php.ini 의 [opcache] 설정 부분에 다음과 같이 추가하여야 동작합니다.

 

opcache.enable=1
opcache.jit_buffer_size=100M
opcache.jit=tracing

 

opcache.enable : opcache를 사용한다는 의미입니다(JIT이 opcache에 딸려있음)

 

opcache.jit_buffer_size 은 JIT 컴파일러가 사용할수 있는 메모리 크기이며, opcache.jit=tracing 은 jit의 모드를 결정하는 구문입니다.

 

일반적으로 tracing을 강력하게 추천드리며 tracing으로 하시면 됩니다.

 

 

 

[참고]

opcache.jit

 

For typical usage, this option accepts one of four string values:

 

disable: Completely disabled, cannot be enabled at runtime.

off: Disabled, but can be enabled at runtime.

tracing/on: Use tracing JIT. Enabled by default and recommended for most users.

function: Use function JIT.

  • profile
    기분탓일지는 모르겠지만 반응속도가 엄청 빨라진 느낌이 드네요 ㅎㅎ

    JIT가 추가됬다는걸 까먹고 있었는데, 팁 감사합니다!
  • profile
    와우! JIT을 이용하면 엄청나게 빨라진다던데 좋은 팁 감사합니다.
  • profile

    opcache.jit_buffer_size=100M

     

    M을 넣으면 RX에서 오류가 발생하여 M을 빼고 php.ini를 수정하였는데...

    정상적으로 적용된걸까요? 속도에서는 원래도 빨랐어서 큰 체감을 못느끼겠어서 적용 된건지 안된건지 모르겠네요 ㅠㅠ..

     

    se.png

  • profile profile

    JIT-100M.png

     

    밑에 내려보면 위와 같이 버퍼 사이즈가 나와있으면 정상으로 보입니다.

  • profile
    좋은 정보 감사합니다~
  • profile

    저도 계속해서 테스트를 해보고 있지만, JIT 사용 여부와 무관하게 PHP 8.0이 PHP 7.4보다 느린 것 같습니다. 아무래도 PHP 8.0에서 워닝이 많이 뜨다 보니, 그걸 처리하느라 낭비되는 시간 때문이 아닐까 싶네요. 사용하시는 자료가 PHP 8.0에서 얼마나 많은 워닝을 유발하는지에 따라 전혀 다른 결과가 나올 수도 있겠습니다.

  • profile profile
    저의 경우 RX2 RC (DEV) 기본 코어에 추가 애드온이나 모듈등의 설치 없이 스킨만 추가/제작 하여 사용중입니다.
    아.. 코멘트 작성시 별도 테이블에 댓글의 확장변수를 넣어주는 모듈 한개는 직접 만든거 사용중이네요

    라이트세일에 아파치님의 AAI 사용하여 7.2 7.4 .8.0 전환하면서 (공통적으로 캐시는 APCU 사용)
    테스트 해보았는데 제 기준에는 8.0이 가장 빠르게 느껴집니다. 단순한 플라시보 일까요??
    안정성에서는 PHP8이 떨어진다지만... 실제로 사용중에도 문제가 되는 부분은 없더라구요

    혹시나 앞으로 추가하게 될 기능들을 염두하고 PHP8로 사용중인데 너무 앞서가는 건가 싶습니다.

    사이트는 일반적인 공개사이트는 아니고... 회사 내부용 그룹웨어 용도 입니다.
  • profile
    php 8.0.1 + 라이믹스 2.0 적용한 결과 메뉴생성에서 아작스 충돌이 일어나고 카운터 애드온에서 오류가 발생하네요.. jit 잠시 보류해야겠습니다.
  • profile
    OPCACHE 가 모두 켜진상태라면 7.4랑 8.0 성능차이는 미미한것 같습니다.