Simply Fast WordPress [7] 1000x Faster WordPress Tuning – HHVM

This is a series of articles explaining how to speed up WordPress, the use of which is growing rapidly for CMS-based business sites and media sites. In the next few articles, I will offer techniques to tune WordPress’ speed by 1000x. --Kengyu Nakamura, Prime Strategy Co., Ltd.

In the previous article, we installed PHP 7 to get double the performance of PHP 5, and sped up WordPress 12.5x the default environment.

In this article, we are going to continue tuning by installing Facebook’s PHP-compatible HHVM (HipHop Virtual Machine).

Simply Fast WordPress [6] 1000x Faster WordPress Tuning – PHP 7

This is a series of articles explaining how to speed up WordPress, the use of which is growing rapidly for CMS-based business sites and media sites. In the next few articles, I will offer techniques to tune WordPress’ speed by 1000x. --Kengyu Nakamura, Prime Strategy Co., Ltd.

In the previous article, we created a PHP5.6+OPCache+APCu environment by installing EPEL and Remi repositories, and sped up WordPress 5.5x the default environment.

In this article we will switch to PHP 7 and improve performance even more.

Simply Fast WordPress [5] 1000x Faster WordPress Tuning – PHP 5.6, OPCache, and APCu

This is a series of articles explaining how to speed up WordPress, the use of which is growing rapidly for CMS-based business sites and media sites. In the next few articles, I will offer techniques to tune WordPress’ speed by 1000x. --Kengyu Nakamura, Prime Strategy Co., Ltd.

In the previous articles we setup WordPress using CentOS 7 on Amazon Web Services (AWS) virtual cloud server Amazon Elastic Compute Cloud (Amazon EC2) and discovered techniques to speed up the site 5.4x faster. We only used repositories available from the standard CentOS 7 environment and configured gzip, Tuned, event MPM, and php-fpm.

In the next set of articles, we will speed up WordPress even more by using repositories outside of CentOS 7 and install PHP 5.6, PHP 7, HHVM (HipHop Virtual Machine), and Nginx to further tune our machine. This will all lead up to an Nginx+HHVM configuration that is 18x faster than the default environment without using page caching. Furthermore, we will achieve 1000x more performance in requests per second by adding Nginx’s FastCGI cache to enable page caching.

From here on, we will mostly be focused on requests per second rather than page load time. This is because as we continue to tune, we will no longer be able to overcome latency inherent in page load time, so measurement becomes less reliable.

KUSANAGI for ALTUS is now available

KUSANAGI for ALTUS is now available.

Please see the guide at KUSANAGI for ALTUS (Japanese page)

KUSANAGI modules update

The modules that compose KUSANAGI have been updated. The new versions are as follows:

Nginx 1.9.12
HHVM 3.12.0
PHP7 7.0.4
WP-CLI 0.23.0

WP-CLI in particular is set to be updated to a newer version along with the upgrade to WordPress 4.5 to be released in April. After you have upgraded WordPress, please update WP-CLI.

Use the following command to update modules:
yum update

Simply Fast WordPress [4] Techniques to Speed Up WordPress 540% with CentOS 7 (Cont)

This is a series of articles explaining how to speed up WordPress, the use of which is growing rapidly for CMS-based business sites and media sites. In part 4, I will continue to explain how to speed up WordPress by 540% just by using the standard CentOS environment. --Kengyu Nakamura, Prime Strategy Co., Ltd.

In the previous article , we installed the PHP accelerator OPCache, edited parameters for MariaDB, and installed a translation accelerator to get WordPress 480% faster.

In this article we will continue to push that to 540%.

Simply Fast WordPress [3] Techniques to Speed Up WordPress 540% with CentOS 7

This is a series of articles explaining how to speed up WordPress, the use of which is growing rapidly for CMS-based business sites and media sites. In part 3, I will explain how to speed up WordPress by 540% just by using the standard CentOS environment. --Kengyu Nakamura, Prime Strategy Co., Ltd.

In the previous article , we installed the PHP accelerator APC (Alternative PHP Cache) to get WordPress 250% faster.

Continuing with this article, we will use the standard repositories of CentOS 7 to speed up WordPress even more by accelerating the following:

1.    PHP execution time
2.    MySQL execution time
3.    Translation execution time
4.    HTTP response time

We will achieve 540% more speed by configuring Apache and the OS to be optimized without outside repositories or page caching.

KUSANAGI 7.8 version upgrade details

KUSANAGI 7.8 version upgrade details

KUSANAGI version 7.8 is now available. On every cloud service, if you are a new user, perform the yum system update covered in the “KUSANAGI Initialization” guide to automatically upgrade to 7.8.
If you are currently using a previous version, please enter the following command as root user to upgrade to 7.8.
# yum update -y kusanagi*
The new features of 7.8 are as follows:

  1. HTTP/2 support
  2. Let’s Encrypt installation
  3. KUSANAGI command “update cert” added
  4. Middleware/applications updates

1. HTTP/2 support

It is now possible to use HTTP/2 while transmitting via HTTPS.
HTTP/2  is a new protocol that allows the multiplexing of transmissions to the browser, and shortens the time for onload.

* For details about HTTP/2, please see the Wikipedia page.

* If a site was created using an version before 7.8 it will not be provisioned to use HTTP/2. If you would like to use HTTP/2 for such a site, please revise the following web server setup files.

Nginx setup file

/etc/nginx/conf.d/~~~~~_http.conf
* ~~~~~  is the value you set during provisioning

Before revision

 location ~* /\. {
deny all;
}

After revision

 location ~* /\.well-known/ {
allow all;
}

location ~* /\. {
deny all;
}

/etc/nginx/conf.d/~~~~~_ssl.conf
* ~~~~~  is the value you set during provisioning

Before revision

 location ~* /\. {
deny all;
}

After revision

 location ~* /\.well-known/ {
allow all;
}

location ~* /\. {
deny all;
}

Before revision
listen 443 ssl;
After revision
listen 443 ssl http2;

Before revision
ssl_ciphers HIGH:!aNULL:!MD5;
After revision
ssl_ciphers AESGCM:HIGH:!aNULL:!MD5;

Apache setup file

/etc/httpd/conf.d/~~~~~_ssl.conf
* ~~~~~  is the value you set during provisioning

<VirtualHost *:443>  the following was added
Protocols h2 http/1.1

Before revision
SSLProtocol all -SSLv2 -SSLv3
SSLCipherSuite HIGH:MEDIUM:!aNULL:!MD5

After revision

SSLProtocol -All +TLSv1 +TLSv1.1 +TLSv1.2
SSLCipherSuite ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-DSS-AES128-GCM-SHA256:kEDH+AESGCM:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-DSS-AES128-SHA256:DHE-RSA-AES256-SHA256:DHE-DSS-AES256-SHA:DHE-RSA-AES256-SHA:!aNULL:!eNULL:!EXPORT:!DES:!RC4:!3DES:!MD5:!PSK

2. Let’s Encrypt installation

The free SSL certificate software Let’s Encrypt  is now available. During provisioning you will be asked to enter an email address to automatically install and configure a Let’s Encrypt SSL certificate. Also, once the certificate has been installed, it will automatically be updated so that you may continue to use Let’s Encrypt SSL.

* In order to install or update your Let’s Encrypt SSL certificate, access to your FQDN server (set up in provisioning) is required. If you have a Basic certificate or have not configured your FQDN DNS, then you will not be able to install or update Let’s Encrypt SSL.

* If you prefer not to use Let’s Encrypt SSL, just hit Enter without typing an email address and you can skip installation.

* Let’s Encrypt  SSL certificate is a domain authentication. If you need a stronger authentication, please use a certificate authority.

* Let’s Encrypt is currently in beta. This may change in the future.

* The installation and updating of Let’s Encrypt SSL uses API. This API has  usage limits, so frequent requests will be restricted.

3. KUSANAGI command “update cert” added

With the installation of Let’s Encrypt, the KUSANAGI command “update cert” has been added.

# kusanagi update cert
This will update the Let’s Encrypt SSL certificate of the currently targeted database.

* You can use “kusanagi target” to confirm the targeted database.

# kusanagi update cert {target}
With the {target} parameter you can directly update the Let’s Encrypt SSL certificate of the targeted database.

4. Middleware/applications updates

The upgrade to 7.8 comes with the following updates to middleware and applications.

Nginx
1.9.10
Apache
2.4.18
HHVM
3.11.0
PHP7
7.0.2
WP-CLI
0.22.0

We will offer any new updates to middleware and applications with a new version upgrade when they become available.

Simply Fast WordPress [2] Speeding up WordPress 250% with PHP Accelerator APC

This is a series of articles explaining how to speed up WordPress, the use of which is growing rapidly for CMS-based business sites and media sites. In part 2, I will explain how to speed up WordPress 250% by using the PHP accelerator APC. --Kengyu Nakamura, Prime Strategy Co., Ltd.

Last time, I discussed the need to speed up WordPress and the basic understanding required to do so. To speed up WordPress server side, you must have a basic understanding of page load time and requests per second. You now know that page load time is determined by:

1.    HTTP request time
2.    PHP execution time
3.    MySQL execution time
4.    Translation execution time
5.    HTTP response time

If you speed up each area you will speed up WordPress.

Using WordPress installed with CentOS 7 on Amazon Web Service’s (AWS) virtual cloud server Elastic Compute Cloud (EC2), I will explain the various techniques to speed up your website server side.

KUSANAGI for Cloudn is now available

KUSANAGI for Cloudn is now available.

Please see the guide at KUSANAGI for Cloudn