rtCamp blazing speed and ee


#1

First off great work on the easy engine! Seriously it makes things a lot easier

What I am struggling though is to get similar speed as to rtcamp.com I am sure the site has all the bells and whistles of ee plus a lot of goodies.

Could you shed some light on the things needed in addition to ee to achieve speed close to rtcamp

For comparison I am getting ~3.5s load speed with ee fast cache and w3tc. Whereas rtcamp is less than 1.5s

In addition I am surprised that rtcamp uses visual composer and it still loads fast. Is the vs a custom built one? Any help on achieving speed with vs please.

Also what about hosting provider ? I use digital ocean 2 core 1 gb ram VPS for baseline comparison.


#2

I don’t think you can do such comparison.

They are a lot factor to take into consideration, e.g the page size, your test location, the server location etc.


#3

Hmm, fair point.

On the other hand, I do want to know what kind of optimizations are involved especially with visual composer. The moment I use it the page speed goes down.


#4

By visual composer you mean the “visual composer plugin” for wordpress? And when you test a page made with visual composer your speed decrease?


#5

Yes visual composer for Wordpress

When I use it the initial page completes at 1.6. S avg whereas if I remove visual composer it comes in at 550ms. I guess its slowing down at php level


#6

My guess is that Visual Composer add an extra code to the page, increasing the page size, or it add some extra call to external server for css or js.

You might want to compare the page size and connections initiated by the page before and after activating Visual Composer.


#7

The first problem is… Easy engine does optimizations, but maybe for a gigantic server, something with xeon cpu’s, 72+GB Ram.

For small vps accounts, cloud servers or smaller dedicated servers, you should just install a clean Ubuntu 14.04, and don’t select any options for mail servers, web servers, etc…

You can install nginx, percona and php-fpm fairly easy! There are a lot of tutorials on the web for this. If you are on a smaller server. Try running Quick Cache + Autoptimize only as it’s disk caching plus minify. If you want full page caching from memory, use PHP5-APCu + WP-FFPC + Autoptimize.

Honestly, RTcamp solutions are rather old, as is W3 Total Cache… See my test site, http://mywpdev.com It runs on an Amazon EC2 t2.Micro, 1GB Ram, 1 Vcore. It can withstand a lot of traffic. (They are free for 12 months) http://aws.amazon.com/free/

It’s easy to blow any website away when it comes to speed…

RTcamp: GTmetrix http://gtmetrix.com/reports/rtcamp.com/O1d8h4a7

Mywpdev GTmetrix (personal site) http://gtmetrix.com/reports/mywpdev.com/HMbs3AKL

You can try them both at http://tools.pingdom.com/fpt/ also… My sites also hit 100% there too!


#8

This is interesting !

Rtcamp? Do you have something to comment


#9

If you want to compare server/app performance, do a proper benchmark, not with page speed test.

Yes it’s easy to get high test score for wordpress with twenty twelve theme.

Just to prove my point - http://gtmetrix.com/reports/faizi.lowendwordpress.com/CmkAmdfX

Running Easy Engine with memcached and php5 Opcache on a cheap oversold lowend USD5/year 256MB OpenVZ VPS.


#10

It’s based around a modified version of the 60 Million hits per day… I’ll get a benchmark in a minute.

Chris

BTW: Thats EE running on that little VPS? Also, the post wasn’t about the lowend VPS… But about the rtcamp.com, which as I show on my site, all the so called pro’s of optimization, can’t even seem to optimize their own sites… And you sell services? http://gtmetrix.com/reports/rtcamp.com/O1d8h4a7


#11

Yes it’s running EE.

No I don’t sell service. This is just a hobby of mine, I make my living on a different niche. Don’t mind the avatar, it’s a stock photo.

You do know that those speed test page have several factors in play, and it’s almost impossible to get a perfect score for a rich content website like rtcamp.com.

All the page speed recommendation are displayed as best practice. The crucial factor that Google taken into consideration is the “Page Load Time”. For example you can get high page score by deferring all CSS to load after other element finished loading. However by doing that some script may break, and your page load time will increase.


#12

It’s not that hard… I post most of the information on my test site…

All WordPress websites should have an SEO Optimized Theme!
No external calls or http requests for Fonts, JS, CDN ETC
All images should be optimized with tinypng, or something prior, then again with EWWW or Smush.it Plugin.
Clean Javascript and CSS Code.

When it comes to caching, Using the Right Cache combination + the right minify combination will help with the yahoo and google pagespeed rankings.

Out of over 2000+ tests, Quick Cache + Autoptimize is the best Disk Cache Combination… Using RHEL Tuned or Ubuntu Tuned helps a lot for this when set to throughput-performance…

For memory based caching, PHP5-APCu + WP-FFPC +Autoptimize gets amazing speed… It smokes memcache…

And then a properly configured nginx.config and virtual host config! 90% of the optimizations can be achived with nginx. Not so much cache and minify… But you need to find the right configurations for hi-performance configs, not like the ones used here as examples.

I don’t know much about this htperf yet, but here is a test from the rtpage. Using their test string I mean!

Total: connections 1000 requests 1000 replies 1000 test-duration 1.827 s

Connection rate: 547.2 conn/s (1.8 ms/conn, <=644 concurrent connections)
Connection time [ms]: min 24.0 avg 666.7 max 965.3 median 810.5 stddev 280.5
Connection time [ms]: connect 98.1
Connection length [replies/conn]: 1.000

Request rate: 547.2 req/s (1.8 ms/req)
Request size [B]: 64.0

Reply rate [replies/s]: min 0.0 avg 0.0 max 0.0 stddev 0.0 (0 samples)
Reply time [ms]: response 183.6 transfer 385.0
Reply size [B]: header 364.0 content 38677.0 footer 1.0 (total 39042.0)
Reply status: 1xx=0 2xx=997 3xx=0 4xx=0 5xx=3

CPU time [s]: user 0.02 system 1.04 (user 1.3% system 56.7% total 58.1%)
Net I/O: 20897.2 KB/s (171.2*10^6 bps)

Errors: total 0 client-timo 0 socket-timo 0 connrefused 0 connreset 0
Errors: fd-unavail 0 addrunavail 0 ftab-full 0 other 0

I will push it further as soon as I see which settings really nail the server.

Chris


#13

Yes your points are valid, for the technical know how.

However for the most of us who don’t have the technical knowledge, Easy Engine is a quick fix solutions.

I guess that’s the point of EasyEngine, hence the name “Easy”.

And there’s no stopping you to configure the stack to your liking. In fact I find EE Stack structure easy to understand and work with.

Anyway thank you for your hard work, and good luck with your service.


#14

@Christopher_Bunting

First about EasyEngine and resource requirement…

rtCamp.com is running on 4GB VPS not 72GB+ VPS.

We have tutorials for many different caching, not just W3TC - https://rtcamp.com/wordpress-nginx/tutorials/

Similarly, EasyEngine supports many type of caching and at rtCamp we are using nginx fastcgi-cache, which we always recommend over others. You can see all options at - https://github.com/rtCamp/easyengine#cheatsheet---site-creation

EasyEngine is optimized for 512MB RAM VPS. Every build is tested on DigitalOcean’s smallest 512MB instance. If you run EasyEnigne on 512MB DigitalOcean instance you will see, EasyEngine creates swap file when it detects less RAM and missing SWAP. There are many more things like this that are checked/tweaked at every stage.

But as we are also humans, its very much possible for us to make a mistake. EasyEngine is open-source and you are welcome to improve it further based on your experience. :smile:

About comparing rtcamp.com with mywpdev.com…

IMHO it’s like comparing apple to oranges! rtcamp.com has store, visual composer (as noted by @umamakesh), gravity forms and more than 50 plugins.

As @faizi noted http://mywpdev.com/ is using default theme with almost default WordPress! As his link shows http://gtmetrix.com/reports/faizi.lowendwordpress.com/CmkAmdfX, similar results are possible for similar sites.

You just cannot compare randomly 2 sites on gtmetrix.com. gtmetrix.com is better used to compare same site “before” and “after” making some “front-end” changes.

Anyway, I came here to answer @umamakesh original question.

To: @umamakesh

Apart from EasyEngine site with fastcgi-cache, rtcamp.com has pagespeed enabled - https://rtcamp.com/tutorials/nginx/using-pagespeed/

We also use HHVM with FPM fallback - https://rtcamp.com/tutorials/php/hhvm-with-fpm-fallback/.

Please note HHVM’s impact won’t be visible in gtmetrix or any test like gtmetrix. It is used mainly to speed up non-cached portion of site in our case, our store and checkout experience.

Also, pagespeed and HHVM are experimental features in EasyEngine world. We hope to complete testing soon so we can add them to feature EasyEngine builds. But point is, try them carefully. They can break site.

You can check these slides which covers pagespeed and few more things. Also here is something like our checklist - https://rtcamp.com/tutorials/wordpress/performance-optimization/

If you have heavily customized site try ee debug command. It could be a bad mysql query or a poorly coded theme/plugin. You can find such issues using ee debug.


#15

I wasn’t here to start a debate!

As far as, IMHO it’s like comparing apple to oranges! rtcamp.com has store, visual composer (as noted by @umamakesh), gravity forms and more than 50 plugins.

For a WordPress Optimization service, Thats a bit shocking…

In regards to EE, Maybe DO isn’t the only place that could be tested… Maybe Linode, or even on Amazon EC2…

Here is a base install on (Actually was DO), (WP - Super Cache) 80% Ram Usagage Sitting Still…

The same install by hand, only optimized nginx.conf, php-fpm, and custom vhost… WP + SuperCache… 17% Ram…

This is what I found during my test on the t2.Micro, and what lead me to assume that the optimizations EE makes are wrong…

My Bad, These screen were actually on a Digital Ocean 2GB Ram VPS.

Chris


#16

For a WordPress Optimization service, Thats a bit shocking…

What’s shocking here? We wish to use those many plugins. We are getting desired performance.

It is not number of plugins but quality of code that matters. Using ee debug command we can always find out poorly coded stuff.

In regards to EE, Maybe DO isn’t the only place that could be tested… Maybe Linode, or even on Amazon EC2…

rtcamp.com itself is hosted on linode. Linode has no 512MB instance. Our sites are spread across linode, digitalocean, amazon and some dedicated servers. We go case by case basis when deciding about size and company. EE works on all of them. It’s not about hosting company much. As long as OS is Ubuntu/Debian, EE works (for us atleast).

EE takes more RAM as it allocates buffer aggressively for nginx/php/mysql as well. Having some free RAM is important. Not all RAM needed to be free.

As @faizi point out in earlier post, you can use EE to speed up setup part and then change config to your liking. EE is based on conventions so it will respect your changes.

If you find any config parameters for which EE should use different default values, we will be happy to change EE defaults.

Finally, EE is not the only way. Just use whatever works for you! :smile:


#17

On my micro sites, I always run Quick Cache + Autoptimize…

On the EE test, and I just did a live test on a high traffic WordPress site that I run! Both of these sites, used W3 Total Cache and i’ve found the bottleneck that has been causing the majority of the problems…

The minify system seems to need a rewrite… It was causing a lot of issues…

Here is a massive theme, wordpress site using only W3 Total Cache,

  • Output from Gtmetrix (Notice the amount of requests…)

Page load time: 2.69s
Total page size: 2.76MB
Total number of requests: 65

W3 Total Cache, Minify Disabled, and Autoptimize used with JS + CSS + CSS In-line…

  • Load time, Page Size and Requests dropped… Site has 18 style sheets (WP - Woocommerce)

Page load time: 0.85s
Total page size: 443KB
Total number of requests: 16

So in the end, the bottlenecks that we’ve been facing, which has lead me to develop some of the fastest NGINX configurations, are all because of W3 Total Cache!


#18

Wow! A lot of good information in this thread.

@rahul286

  1. Does Pagespeed not take a lot of CPU cycles?I have seen some tests wherein pagespeed makes fastcache to slow down
  2. I tried HHVM but it makes wp-cli to not work dont know why.

@Christopher_Bunting

  1. I am sure Autoptimize also uses rewrite rules. Whenever i use it, that slows my website too. Do you use W3TC only for broswer cache then?

#19

I’ve used Pagespeed myself in the past, But I honestly don’t see a benefit from using it… It didn’t better any pagespeed results as compared to having the nginx.conf properly configured.

I don’t use HHVM either… Again, I don’t see any real need for this. Pretty much the same as using a tmpfs or ram disk… If thats the case, don’t use disk based caching, use Opcode instead…

On Nginx, I never changed anything for re-write rules for Autoptimize. On the live site currently running this setup is http://boi-infinity.com My wife and I run an MMORPG server so traffic is crazy…

The current setup is W3 Total Cache, using Page Cache, Disk Enhanced, Object and Database Cache, both caching to disk.

Autoptimize, I dont use html minify at all. Under javascript options, Only check Optimize Javascript code, Under CSS, I check only Optimize CSS and Inline CSS. Then at the very bottom, Save aggregated script/css as static files? I select yes…

Again, this is the setup running on boi-infinity.com… It uses the Salient Theme + Woocommerce… Terribly unoptimized with way to many style sheets… But the use of W3 Total Cache and Autoptimize was almost like an automatic fix… I didn’t even touch any code or make theme optimizations…


#20

@umamakesh

  1. pagespeed doesn’t put any noticeable load on CPU. I guess it depends on pagespeed config as well. On rtcamp.com and few client sites we are using pagespeed and fastcgi-cache for a while.
  2. wp-cli uses composer I guess. HHVM has some issues with composer, not sure though. For CLI, you can use PHP-FPM. You can use different PHP implementation for CLI and CGI (web-server).

@Christopher_Bunting HHVM is not for typical caching. It’s different implementation of PHP, developed and used by facebook, to speed up non-cacheable part. In our case wp-admin and store. As said before, HHVM will not make any difference in test like gtmetrix.

Finally, as long as number of requests are reduced and page size is reduced, site will load faster. It doesn’t matter much if this work is done by wordpress plugins or pagespeed. I prefer pagespeed over W3TC because we prefer doing things on nginx end.