Konfigurasi PHP Fcgid untuk Server dengan RAM 4GB

Sempat dipusingkan dengan penggunaan RAM yang sangat besar di beberapa server, akhirnya kali ini saya temukan (salah satu) solusinya.

Untuk konfig PHP, manfaatkan caching opcache. Oleh karena itu perlu diinstall :

  sudo apt-get install php5-xcache

Selanjutnya edit file php.ini

  sudo vim /etc/php5/apache2/php.ini

tambahkan kode konfigurasi berikut :

zend_extension=/usr/lib/php5/20131226/opcache.so
opcache.memory_consumption=64
opcache.interned_strings_buffer=8
opcache.max_accelerated_files=7963
opcache.revalidate_freq=0
opcache.fast_shutdown=1
opcache.enable_cli=1
opcache.enable=1

Buat file baru

  sudo vim /etc/apache2/conf-available/pre_virtualhost_global.conf

Salin kode berikut ke dalam file tersebut :

##Apache Event Default Settings (overrides main httpd.conf)
KeepAlive               On
KeepAliveTimeout        2
MaxKeepAliveRequests    500
<IfModule event.c>
ThreadsPerChild         25
ServerLimit             16
MaxRequestWorkers       400
StartServers            6
MinSpareThreads         150
MaxSpareThreads         400
MaxRequestsPerChild     0
</IfModule>
 
<IfModule mod_fcgid.c>
FcgidMaxRequestLen                      1073741824
FcgidOutputBufferSize                   1073741824
FcgidMinProcessesPerClass               0
FcgidMaxRequestsPerProcess              0
FcgidInitialEnv PHP_FCGI_MAX_REQUESTS   0
FcgidInitialEnv PHP_FCGI_CHILDREN       0
FcgidMaxProcesses                       80
FcgidMaxProcessesPerClass               40
FcgidFixPathinfo                        1
FcgidIdleTimeout                        3
FcgidBusyTimeout                        300
FcgidProcessLifeTime                    300
FcgidIOTimeout                          300
FcgidIdleScanInterval                   1
FcgidErrorScanInterval                  1
FcgidZombieScanInterval                 1
</IfModule>

Buat simbolik link, supaya file konfigurasi tersebut terbaca oleh Apache2

  cd /etc/apache2/conf-enabled
  sudo ln -s ../conf-available/pre_virtualhost_global.conf pre_virtualhost_global.conf

Matikan, lalu nyalakan lagi apache2 untuk memastikan konfigurasinya dimuat secara sempurna.

 sudo /etc/init.d/apach2 stop
 sudo /etc/init.d/apach2 start

DONE!

Referensi

  • linux/Konfigurasi.PHP.Fcgid.untuk.server.4GB
  • Terakhir diubah: 5 bulan yang lalu
  • (Perubahan eksternal)