facebook twitter hatena line email

「Linux/phpインストール/jit」の版間の差分

提供: 初心者エンジニアの簡易メモ
移動: 案内検索
(jit設定)
 
(同じ利用者による、間の4版が非表示)
行2: 行2:
 
スクリプトを実行する直前にマシン語に変換して高速化する機能
 
スクリプトを実行する直前にマシン語に変換して高速化する機能
  
opcacheのオプションなので、まずはopcacheを入れる。
+
JITはOPCacheのサブセットなので、まずはopcacheを入れる。
  
 
==jit設定==
 
==jit設定==
行18: 行18:
 
opcache.interned_strings_buffer=16
 
opcache.interned_strings_buffer=16
  
;opcache.max_accelerated_files=4000
+
;opcache.max_accelerated_files=10000
 
opcache.max_accelerated_files=10000
 
opcache.max_accelerated_files=10000
  
行27: 行27:
  
 
再起動
 
再起動
  systemctl restart php-fpm nginx
+
  systemctl restart php-fpm
 +
 
 +
確認
 +
<pre>
 +
$ php -i | grep jit
 +
opcache.jit => tracing => tracing
 +
opcache.jit_bisect_limit => 0 => 0
 +
opcache.jit_blacklist_root_trace => 16 => 16
 +
opcache.jit_blacklist_side_trace => 8 => 8
 +
opcache.jit_buffer_size => 256M => 256M
 +
opcache.jit_debug => 0 => 0
 +
opcache.jit_hot_func => 127 => 127
 +
opcache.jit_hot_loop => 61 => 61
 +
opcache.jit_hot_return => 8 => 8
 +
opcache.jit_hot_side_exit => 8 => 8
 +
opcache.jit_max_exit_counters => 8192 => 8192
 +
opcache.jit_max_loop_unrolls => 8 => 8
 +
opcache.jit_max_polymorphic_calls => 2 => 2
 +
opcache.jit_max_recursive_calls => 2 => 2
 +
opcache.jit_max_recursive_returns => 2 => 2
 +
opcache.jit_max_root_traces => 1024 => 1024
 +
opcache.jit_max_side_traces => 128 => 128
 +
opcache.jit_max_trace_length => 1024 => 1024
 +
opcache.jit_prof_threshold => 0.005 => 0.005
 +
</pre>
 +
 
 +
==php-fpmの再起動すると、selinuxで、エラーが起こる可能性==
 +
サーバ再起動でphp-fpmが起動できずに停止して、エラーが出ないことを確認。

2026年4月13日 (月) 13:22時点における最新版

jitとは

スクリプトを実行する直前にマシン語に変換して高速化する機能

JITはOPCacheのサブセットなので、まずはopcacheを入れる。

jit設定

以下変更と追加をする。

/etc/php.d/10-opcache.ini

;opcache.enable_cli=0
opcache.enable_cli=1

;opcache.memory_consumption=128
opcache.memory_consumption=256

;opcache.interned_strings_buffer=8
opcache.interned_strings_buffer=16

;opcache.max_accelerated_files=10000
opcache.max_accelerated_files=10000

; JIT 設定 を追加
opcache.jit_buffer_size=256M
opcache.jit=tracing

再起動

systemctl restart php-fpm

確認

$ php -i | grep jit
opcache.jit => tracing => tracing
opcache.jit_bisect_limit => 0 => 0
opcache.jit_blacklist_root_trace => 16 => 16
opcache.jit_blacklist_side_trace => 8 => 8
opcache.jit_buffer_size => 256M => 256M
opcache.jit_debug => 0 => 0
opcache.jit_hot_func => 127 => 127
opcache.jit_hot_loop => 61 => 61
opcache.jit_hot_return => 8 => 8
opcache.jit_hot_side_exit => 8 => 8
opcache.jit_max_exit_counters => 8192 => 8192
opcache.jit_max_loop_unrolls => 8 => 8
opcache.jit_max_polymorphic_calls => 2 => 2
opcache.jit_max_recursive_calls => 2 => 2
opcache.jit_max_recursive_returns => 2 => 2
opcache.jit_max_root_traces => 1024 => 1024
opcache.jit_max_side_traces => 128 => 128
opcache.jit_max_trace_length => 1024 => 1024
opcache.jit_prof_threshold => 0.005 => 0.005

php-fpmの再起動すると、selinuxで、エラーが起こる可能性

サーバ再起動でphp-fpmが起動できずに停止して、エラーが出ないことを確認。