Changesets to improve performance in 2.40

This topic was automatically closed 365 days after the last reply. New replies are no longer allowed.
11 years ago
Hi all,

I know there are a number of threads on the forums on here about performance in 2.0+. I don't want to get into all the same conversations, I know the Nop team are working hard to improve performance with each release.

I'm running a 2.40 site which unfortunately i cannot easily upgrade to the latest version. The basic problem is that I am running a site which has only about 180 products, but regularly gets 1000+ concurrent visitors - at these times the CPU hits 100% and most people cannot get onto the site. I have seen a couple of topics stating that there are a number of changesets available to improve performance, can anyone tell me which these are?

Thanks so much in advance

Al
11 years ago
There are really a lot of changes related to perfomance since 2.40 and it's hard to post all of them here. I would recommend you going to this page and looking through all the chnagesets which were done. All changeset names are self describing and you can easily find the ones related to performance (for example, search by "performance" keyword).
11 years ago
higgsy wrote:
I'm running a 2.40 site which unfortunately i cannot easily upgrade to the latest version. The basic problem is that I am running a site which has only about 180 products, but regularly gets 1000+ concurrent visitors


Surely if it's getting that many visitors, it's generating enough money to you to get someone to upgrade it to 2.70 (which is much faster)?  1000+ visitors a minute requires a seriously monster server (even with 2.70) you will need a web farm I would have thought.
11 years ago
nmg196 wrote:
Surely if it's getting that many visitors, it's generating enough money to you to get someone to upgrade it to 2.70 (which is much faster)?  1000+ visitors a minute requires a seriously monster server (even with 2.70) you will need a web farm I would have thought.


Hey, don't shoot the messenger, I'm the developer of the site, not the money man! Besides, if I'm honest, I think at the moment the time is better spent looking at solutions outside of Nop to improve performance by offloading "load" from the server. I appreciate that the Nop team are improving performance all the time, but even so 2.70 is not there yet. I've spent  the evening putting a reverse proxy in-place and all my initial tests indicate it is working like a dream...if so, that was perhaps 2 weeks quicker than upgrading to 2.70 (bearing in mind the site is heavily customised)...I'll share my results when I have firm test results.
11 years ago
higgsy wrote:
I'll share my results when I have firm test results.

I would appreciate it very much :)
11 years ago
Hi all,

I'll be back to you shortly (next 24-48 hours). We have been able to successfully put a proxy server in front of Nop and cache the entire page and all static content. Any SSL traffic, or if the User is logged in (Nopcommerce.Auth cookie) are still sent to the server. Any content that is specific to the user (identified via Nop.Customer cookie) is loaded via ajax.

load tested with 500 concurrent users, cpu at only 10%!!

Whoop whoop!

Al
11 years ago
higgsy wrote:
I'll be back to you shortly (next 24-48 hours). We have been able to successfully put a proxy server in front of Nop and cache the entire page and all static content. Any SSL traffic, or if the User is logged in (Nopcommerce.Auth cookie) are still sent to the server. Any content that is specific to the user (identified via Nop.Customer cookie) is loaded via ajax.load tested with 500 concurrent users, cpu at only 10%!!


It would be great to hear about how you've set this up and any customisations you've needed to get it to play well with NopCommerce. Is the proxy running on the same server or a different server? Which software are you using? Thanks!
11 years ago
I'm also very interested in how you implemented it
11 years ago
https://www.nopcommerce.com/boards/t/20878/use-pagespeed-service-from-google-to-increase-your-site-performance.aspx
11 years ago
Hi all,

Just wanted to report back.

We ended up implementing NGinx which is an open source proxy server, running on two seperate load-balanced instances of CentOS, all on-top of Amazon's AWS.

To get NopCommerce to play nicely we didnt have to do too much to the actual product, most of the configuration was on NGinx itself. Within Nop we had to call several functions via Ajax i.e. on a standard Nop instance the cookie is delivered on first request. As the page is now completely cached we used NGinx to strip out the Set-Cookie header, and then delivered the cookie via a JQuery Ajax call. We had to do similar things with the Mini-Cart and Mini-Wishlist.

We also added a rule to NGinx to ignore any SSL traffic, /admin and /customer and anything that contained a postback i.e. add to cart.

It took a bit of time, but last week we had over 1800 concurrent users on the website with the cpu idling between 12-30% and pingdom reporting the site loads faster than 96% of all websites tested - pretty incredible to be honest.

That's a brief overview of how we got it all working. If there is enough interest I'll put a blog post together detailing exactly how to put the solution in-place.

Thanks all

Al
This topic was automatically closed 365 days after the last reply. New replies are no longer allowed.