Optimize Apache, PHP and MySQL Performance for 1GB RAM VPS
Lite 1 GB VPS

How to Optimize Apache, PHP and MySQL Performance for 1GB RAM VPS

There are lots of requests from the visitors especially from David T. upon how to optimize Apache, php and MySQL/Mariadb server which are installed on VPS server with 1gb of RAM, Such 1 gb ram vps is enough powerful for single application and optimizations are necessary in order to Avoid OOM (out of memory) and take juice from it.

Optimization of Apache :

Optimize Apache which is installed on 1gb VPS, it recommended to use Apache MPM worker as prefork :-

Centos:

Under Centos Open this file in editor:

nano /etc/httpd/httpd.conf

And add this configs at the end of httpd.conf :

KeepAlive Off
<IfModule prefork.c>
   StartServers        6
   MinSpareServers     5
   MaxSpareServers     15
   ServerLimit         256
   MaxClients          256
   MaxRequestsPerChild 3000
</IfModule>

Then restart Apache server :

service httpd restart

Ubuntu :

Under Ubuntu Open this file in editor:

nano /etc/apache2/apache2.conf

Find and add/change this configs under apache2.conf file :

<IfModule mpm_prefork_module>
 StartServers        3
 MinSpareServers     5
 MaxSpareServers     15
 ServerLimit         256
 MaxClients          256
 MaxRequestsPerChild 3000
</IfModule>

Then restart Apache server :

sudo service apache2 restart

Optimization of MYSQL :

To optimize MySQL/Mariadb which is installed on 1gb VPS you need to add  this configs in  my.cnf under [mysqld] :

[mysqld]
symbolic-links=0
skip-external-locking
key_buffer_size = 32K
max_allowed_packet = 4M
table_open_cache = 8
sort_buffer_size = 128K
read_buffer_size = 512K
read_rnd_buffer_size = 512K
net_buffer_length = 4K
thread_stack = 480K
innodb_file_per_table
max_connections=100
max_user_connections=50
wait_timeout=50
interactive_timeout=50
long_query_time=5

On Centos/RHEL based system you can add it in :

/etc/my.cnf

On Ubuntu/Debian based system you can add it in :

/etc/mysql/my.cnf 
  • Also consider adding SWAP to your VPS which will drastically stabalizes the 1 gb VPS : Create and Add Swap On Linux OS CWP Centos WebPanel and VestaCP
  • To optimize PHP just installed php-opcache and memcached (memcached need to be supported by script)
  • Configure PHP memory limit not more than 128 mb.
  • Use cache system which is provided by your script or for WordPress use WP super cache.

Related Article

Migrate VM

How to convert OVA image to QCOW2 format on Linux

Question: I have downloaded a virtual appliance packaged in OVA format. I want to convert the OVA image to QCOW2 […]

Easiest Way to Install Next Cloud & OnlyOffice At Your On Premises – Full Privacy With Full Featured Document Server.

Contents1 Overview2 NextCloud Setup Process2.0.1 Consider getting a domain2.0.2 Install Ubuntu Server2.0.3 Guidance Notes – Adding a user – After […]

Pihole UnboundDNS Configuration

Pi-hole as All-Around DNS Solution with Unbound DNS

Contents1 The problem: Whom can you trust?1.1 What is a recursive DNS server?1.2 What does this guide provide?1.2.1 A standard […]