PHPの「Unable to allocate memory for pool.」というエラーの対処法
※本ページはプロモーションが含まれています
めったに見ないサーバーのエラーログを見ていたら
PHP Warning: require_once(): Unable to allocate memory for pool.・・・
というエラーが大量に出ていたので、解決方法のメモ。
解決方法
このエラーはAPC関連の問題らしい。
エラーを読んでみると「メモリの配分ができないよ」みたいなことを言っているので、
vi /etc/php.d/apc.ini
のファイルサイズを変更
apc.shm_size=64M ↓ apc.shm_size=128M
64Mしか割り当てられていなかったのを倍の128Mにしてみた。
PHPを再起動。
# service php-fpm restart
これで様子を見た所エラーが出なくなった。
おわりに
サーバーのエラーログを見てもわからないと思い今まで見てきませんでした。
しかし、エラーが出ているということはサーバーに多少なり負荷をかけているので、サーバーリソースを確保する意味でエラーログを見る習慣をつけます。