Friday, October 29, 2010

Joomla PHP/MySQL Performance Tuning

Hi Friends,

Few days back i was playing with an internal setup of WAMP Server having Apache 2.2.11, PHP 5.3.0 & MySQL 5.1.36 deployed with Joomla 1.5.21 CMS.
 
For a 500 user base below are Apache & MySQL Parameters for optimal Joomla Performance on a Windows Deployment:
 
Apache mpm_winnt_module
# WinNT MPM
# ThreadsPerChild: constant number of worker threads in the server process
# MaxRequestsPerChild: maximum number of requests a server process serves

ThreadLimit 1000
ThreadsPerChild 500
MaxRequestsPerChild 0
KeepAlive On
KeepAliveTimeout 60
MaxKeepAliveRequests 100
MaxMemFree 100


MySQL my.ini
key_buffer = 150M
max_allowed_packet = 1M
table_cache = 1000
sort_buffer_size = 1M
net_buffer_length = 8K
read_buffer_size = 1M
read_rnd_buffer_size = 768K
myisam_sort_buffer_size = 64M
basedir=D:/wamp/bin/mysql/mysql5.1.36
log-error=D:/wamp/logs/mysql.log
datadir=D:/wamp/bin/mysql/mysql5.1.36/data
query_cache_limit=1M
query_cache_size=32M
query_cache_type=1
tmp_table_size=32M
key_buffer_size=64M

These changes are tested & found be working at acceptable levels in my environment. Please consider your deployment sizing & other aspects before adopting above settings.

Keywords:
Apache, WAMP, PHP, MySQL, Performance, Tuning, etc

No comments: