Need help to improve the Page load time

Here is my page result
http://www.webpagetest.org/result/160119_T2_4X8/1/details/

Can anyone help me how to reduce the page load time?

You’re using some sort of custom code.

Time To First Byte primarily tells you how well your LAMP stack is tuned.

LAMP - Linux + Apache + MariaDB/MySQL + PHP.

Likely you’ll require hiring someone to assist you with this.

If high throughput is required, you’ll be served to run on a dedicated server or LXC slice of a physical server.

Focus on the Linux or whatever OS you’re running, which appears to be behind a Citrix Load Balancer, so is occluded/hidden.

Your robots.txt file also serves slow…

http://comefresh.manufacturer.globalsources.com/robots.txt

So your LAMP stack is taking nearly 2 seconds to serve a small text file.

Get this time down to < 500ms + you’ll be making progress.

I use the ApacheBench (ab) program to test Raw File serving speed.

This number has to be >10,000 reqs/sec before a deliver a site to a client.

Once you have flat file speed fast, then move onto tuning for a simple “Hello World” php file, which will test speed of your LAMP stack, without database burden.

Here’s an example of a slow (SSL 1.1) site I host.

net4-dev# webstress https://fastseohosting.com/wptools/hello-world.php
ab -l -k -t 30 -n 10000000 -c 5 https://fastseohosting.com/wptools/hello-world.php
Complete requests: 181623
Failed requests: 0
Keep-Alive requests: 179844
Requests per second: 6054.07 [#/sec] (mean)

So target >5,000 reqs/sec on PHP without database.

Then move on to tuning your database with tools like mysqltuner + mysql-tuning-primer.

For real speed, best to tune LAMP from bottom up, so OS first then Apache, then PHP, then database.

Oh… Do all your testing via ssh into your server… This is the only way to test your LAMP stack.

Running ab against a site on another machine + your data will be limited by speed of the Ethernet adapter your testing from + the Ethernet adapter of the machine where your site is running.

Correct numbers can only be acquired by command line on server where your site is running.

FWIW, a quick improvement would be to move the 301 redirect directly into your htaccess file. Right now it looks like it is being handled by the application code itself and there’s no reason it needs to be. That change alone would shave ~4 seconds off of the first byte time for the test linked above.

Thank you dfavor and Patrick for your advice.

When I test it from different location (Asia-HK), the loading time is lower than Chicago. Is it because of the DNS server?
http://www.webpagetest.org/result/160121_CW_2E3/1/details/cached/

And how could I improve the repeat view loading time?