• Home
  • Archive
  • Tools
  • Contact Us

The Customize Windows

Technology Journal

  • Cloud Computing
  • Computer
  • Digital Photography
  • Windows 7
  • Archive
  • Cloud Computing
  • Virtualization
  • Computer and Internet
  • Digital Photography
  • Android
  • Sysadmin
  • Electronics
  • Big Data
  • Virtualization
  • Downloads
  • Web Development
  • Apple
  • Android
Advertisement
You are here: Home » Optimizing Performance of WordPress Hosted on Cloud Servers

By Abhishek Ghosh March 26, 2014 9:45 pm Updated on March 26, 2014

Optimizing Performance of WordPress Hosted on Cloud Servers

Advertisement

Optimizing Performance of WordPress Hosted on Cloud Servers is Required to Decrease the Latency and Page Loading Time. Technologies are discussed in this article. As for WordPress, the database is MySQL, not even MySQLi. PHP – MySQL Applications are famous but not known to be well performers. WordPress with modification or Plugin can run with PostgreSQL, but usually that is not a standard method follow. We are taking the widely used configuration for WordPress to Optimize, that is a typical Linux-Apache-MySQL-PHP (LAMP) Server driven WordPress. WordPress is not scalable, to make it fully scalable amount required to pay will not make the average webmaster happy, the wallet is unfortunately not scalable. So, some compromise is usually done.

 

Optimizing Performance of WordPress Hosted on Cloud Servers : Understanding the Basics

 

Practically, WordPress is not a Web App optimized for running on scalable Cloud Infrastructure. Technically WordPress should run quite nicely on a 256 MB server – unfortunately that is fully theoretical. There are Thousands of Plugins which adds more burden and the practical need to run WordPress nicely (with 5K Posts) becomes 01 GB. But, with only one 01 GB RAM, unfortunately; MySQL Server will not work optimally with co-shared processes and/or various running demons. The best solution would be to use :

  1. Using a Database as a Service of 512 MB for MySQL Server
  2. Using At least Two Servers of 512 MB size with Master Slave Configuration for running Apache2 and PHP
  3. Using nginx Reverse Proxy Server of 512MB with some Cache System – Memcache or Redis

As, this configuration is not only costly but also demands always on person to check the server side, we usually take an 01 GB Server Running WordPress as common standard. Theoretically, if all the pages are converted to HTML and served as cached version, an 01 GB Server would be sufficient. Unfortunately, a WordPress with 5K Posts can never convert all the Pages to HTML on the fly, a regularly updated blog posts 4-6 Posts per day. All the HTML Pages are cleared after Publication of a Single Post. Again, if you increase the number of Physical Processors on a single Server and Allocate more RAM to make the caching process faster, unfortunately your bill will reach typical 3-5 server configuration for making WordPress running on kind of legacy mode to make it scalable.

Advertisement

---

Apache is a robust Web Server Software, it is PHP plus badly coded Plugins make it worser. nginx is a compromise to run the poor WordPress faster.  Apache is more secured, more developed. If you want to run WordPress with nginx WebServer – use a managed service. You can decrease the RAM to 512 MB. Still, 512 MB will not give much room to give PHP to use 256 MB of RAM.

We usually use :

  1. Either W3 Total Cache Plugin Alone
  2. WP Super Cache Plus 2-3 Add-on Plugins for WP Super Cache
  3. Batcache Plus MemCache Plus some Other Plugins to combine and/or minify CSS, HTML and infamous Javascripts.
  4. Memcache and Redis actually serves the same function.

 

Optimizing Performance of WordPress Hosted on Cloud Servers : Options

 

A PHP accelerator is definitely required on the server side. A PHP accelerator is a PHP extension designed to improve the performance of software applications written in the PHP programming language. Most PHP accelerators work by caching the compiled opcode/bytecode of PHP representation of php files to avoid the overhead of parsing and compiling source code on each request. There are various PHP Accelerators :

  1. Alternative PHP Cache (APC)
  2. eAccelerator
  3. ionCube PHP Accelerator
  4. Turck MMCache (it is a misnomer in strict sense)
  5. XCache
  6. Nusphere PhpExpress

Turck MMCache for PHP probably was the best solution, unfortunately it is not updated; Alternative PHP Cache (APC) is taken as the standard. eAccelerator is probably a fork of Turck MMCache, but in practical scenario with newest PHP, Alternative PHP Cache (APC) works better for most server hardwares. As like desktop computers, it matters what Processor, RAM, Chipset etc. are used on the server as hardware.

Second Part is that Caching Part. If we save data dynamically and serve in a pseudo static fashion – it actually becomes Caching – Disc Cache. We do not want go in to details, but Memcache or Redis is not the full solution to Cache all kind of data. We are talking about an 01 GB Server Running WordPress.

There are tweaks for Apache by enabling modules like deflate (gzip was for version 1 of Apache, we recommend to use both gzip and deflate directives on htaccess with overriding as Site specific settings – for browser issues, enabling both works better on tests). In the same way, there are tweaks for PHP, MySQL too.

Optimizing Performance of WordPress Hosted on Cloud Servers

For W3 Total Cache, the best settings is (again, it is for an 01 GB Server Running WordPress) :

  1. Page cache method ==> Disk Enhanced
  2. Minify cache method ==> Disk
  3. Database Cache ==> Alternative PHP Cache (APC)
  4. Object Cache ==> Memcached
  5. Varnish server is better to use (you can use your another server like in a daisy chain)
  6. CDN ==> Enabled except for the attachments for the sake of SEO (Google image search brings a lot of visitors)

Many things said in very small details, but unfortunately Google has added new “Laws” to measure “Quality” that practically renders W3 Total Cache using to an average result. It is difficult to score 90+ now as without hand coding, it is impossible to maintain all their points. There are many Managed WordPress Hosting services are available now, if you challenge; we can show, their own WordPress website can not score over 72 on Google’s test. Now on the security side, what W3 Total Cache does is not great, if you do a curl to get header :

Vim
1
2
3
4
5
6
7
8
9
10
11
12
13
? ~ curl -I example.com
HTTP/1.1 200 OK
Date: Wed, 26 Mar 2014 21:25:32 GMT
Server: nginx (REHL)
Vary: Host,User-Agent
X-Powered-By: W3 Total Cache/0.9.3
Set-Cookie: PHPSESSID=lghseuhm2g02qehgvqpossnho5; path=/
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Pragma: no-cache
X-Pingback: http://example.com/xmlrpc.php
X-W3TC-Minify: On
Content-Type: text/html; charset=UTF-8

X-Powered-By, X-W3TC-Minify are never standard headers and open up information about your setup. To modify them, you have to change them to arbitrary values, change ownership of the files to root and chmod to prevent overwritten. Other header data can be modified from php.ini file. You can compare the values with Yahoo! :

Vim
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
? ~ curl -I https://www.yahoo.com/
HTTP/1.1 302 Found
Date: Wed, 26 Mar 2014 21:33:26 GMT
P3P: policyref="http://info.yahoo.com/w3c/p3p.xml", CP="CAO DSP COR CUR ADM DEV TAI PSA PSD IVAi IVDi CONi TELo OTPi OUR DELi SAMi OTRi UNRi PUBi IND PHY ONL UNI PUR FIN COM NAV INT DEM CNT STA POL HEA PRE LOC GOV"
Cache-Control: private
X-Frame-Options: SAMEORIGIN
Strict-Transport-Security: max-age=0
Set-Cookie: DNR=deleted; expires=Tue, 26-Mar-2013 21:33:25 GMT; path=/; domain=.www.yahoo.com
Set-Cookie: DNR=deleted; expires=Tue, 26-Mar-2013 21:33:25 GMT; path=/; domain=.www.yahoo.com
Set-Cookie: fpc=d=0XXmOH7caCRdbDH88jwn8UqmD79VLVwaGhtkz6BFZtXlO1ifzF0Zq0Y66x4psNtLajys4Wa_ulyZcNJpRzdx9TRN_bJ2qHDuEwpKAsQi3IeTtA0_NT5dAfa38.MMYE0XfrfLlEImob.6nCKreuNwtsOhZYrLnSofJcaEr5xKlF63z0cLClEnIHV45TjJR42p_85jlhA-&v=2; expires=Thu, 26-Mar-2015 21:33:26 GMT; path=/; domain=www.yahoo.com
Location: http://in.yahoo.com/?p=us
Vary: Accept-Encoding
Content-Type: text/html; charset=utf-8
Age: 1
Connection: keep-alive
Via: http/1.1 ir6.fp.sg3.yahoo.com (ApacheTrafficServer/4.0.2)
Server: ATS

This Article Has Been Shared 238 Times!

Facebook Twitter Pinterest
Abhishek Ghosh

About Abhishek Ghosh

Abhishek Ghosh is a Businessman, Surgeon, Author and Blogger. You can keep touch with him on Twitter - @AbhishekCTRL.

Here’s what we’ve got for you which might like :

Articles Related to Optimizing Performance of WordPress Hosted on Cloud Servers

  • Change SSH Welcome Message (Ubuntu, Rackspace Cloud)

    Here is How You Can Change SSH Welcome Message, Also Known as Message of the Day or MOTD on Ubuntu Server on Rackspace Cloud By Simple Way.

  • Web Fonts, HTTPS and CDN : Error and Solution

    This guide is Intended to solve the errors associated with Web Fonts when served from Rackspace Cloud Files for a webpage using HTTPS.

  • Separate MySQL Database Setup on Rackspace Cloud Server

    Here is a Step by Step Guide on How To Setup a Separate MySQL Database Server on Rackspace Cloud Server and Connect From FTP Server Easily.

  • W3 Total Cache With SSL for Nginx Server

    W3 Total Cache With SSL for Nginx Server, thats on Rackspace Cloud with PHP5-FPM – here are some tips to work with this complex setup keeping everything fine.

  • Cloud Computing : Bandwidth and Network

    There are factors which gave a significant boost to the evolution of cloud. We will discuss about one such factor which influences Cloud Computing.

Additionally, performing a search on this website can help you. Also, we have YouTube Videos.

Take The Conversation Further ...

We'd love to know your thoughts on this article.
Meet the Author over on Twitter to join the conversation right now!

If you want to Advertise on our Article or want a Sponsored Article, you are invited to Contact us.

Contact Us

Subscribe To Our Free Newsletter

Get new posts by email:

Please Confirm the Subscription When Approval Email Will Arrive in Your Email Inbox as Second Step.

Search this website…

 

Popular Articles

Our Homepage is best place to find popular articles!

Here Are Some Good to Read Articles :

  • Cloud Computing Service Models
  • What is Cloud Computing?
  • Cloud Computing and Social Networks in Mobile Space
  • ARM Processor Architecture
  • What Camera Mode to Choose
  • Indispensable MySQL queries for custom fields in WordPress
  • Windows 7 Speech Recognition Scripting Related Tutorials

Social Networks

  • Pinterest (22.1K Followers)
  • Twitter (5.8k Followers)
  • Facebook (5.7k Followers)
  • LinkedIn (3.7k Followers)
  • YouTube (1.3k Followers)
  • GitHub (Repository)
  • GitHub (Gists)
Looking to publish sponsored article on our website?

Contact us

Recent Posts

  • What Is A Digital Media Consultancy? May 17, 2022
  • How Artificial Intelligence (AI) Is Changing The Way We Play Bingo May 16, 2022
  • Why You Need A Big Data Consultant May 15, 2022
  • The Connection Between AI And Online Slots May 13, 2022
  • How To Choose Your Niche As An Instagram Influencer May 12, 2022

About This Article

Cite this article as: Abhishek Ghosh, "Optimizing Performance of WordPress Hosted on Cloud Servers," in The Customize Windows, March 26, 2014, May 18, 2022, https://thecustomizewindows.com/2014/03/optimizing-performance-of-wordpress-hosted-on-cloud-servers/.

Source:The Customize Windows, JiMA.in

This website uses cookies. If you do not want to allow us to use cookies and/or non-personalized Ads, kindly clear browser cookies after closing this webpage.

Read Privacy Policy.

PC users can consult Corrine Chorney for Security.

Want to know more about us? Read Notability and Mentions & Our Setup.

Copyright © 2022 - The Customize Windows | dESIGNed by The Customize Windows

Copyright  · Privacy Policy  · Advertising Policy  · Terms of Service  · Refund Policy