Jump to content

  • You cannot start a new topic
  • You cannot reply to this topic

Server Setup On Multi-Web Instances Rate Topic   - - - - -

 
  • aminm
  • Newbie
  • Trial users
  • Join Date: 20-Mar 17
  • 1 posts

Posted 04 May 2017 - 09:57 AM #1

Greetings, 

 

What would it take to run CS-Cart on multiple web servers and a load balancer, I know

 

- the database have to set on 1 MySQL server

- session should be either on database/Redis

- dynamic content like images should be synced-perhaps using AWS S3

 

am I missing something else ?

 

 



 
  • CartBooster
  • Senior Member
  • Members
  • Join Date: 25-Jun 06
  • 246 posts

Posted 25 September 2017 - 09:06 PM #2

Hi,

 

We've struggled with this for years, these are some of the problems we've had over the years, hopefully can save some others the heartache we've had.

 

1) - Our Peak Season Setup for past 5 years

 

1 x MySQL Server / Load Balancer (Round Robin)

6 x Web Server

 

Web Server 1 was the master server and used rsync to updates files changes across the board,

 

Problems:

• The system architecture of doing this method is severely bottle necked, we added more web servers to reduce load, but we were putting plasters on cuts rather than stopping severe bleeding.

 

• Storing all data / theme cache in "file" method is the most effective, but each web server wrote its own version to its own local var/cache folder, this caused major issues with the website looking for cache / variables that didn't exist. Mainly the issue for us here was product options not being viable to select / checkout. To solve this we mounted "var" as a network mount, but this created its own bottle neck.

 

• Thumbnail cache is dynamic like the website / theme cache, thumbnails created on server 1, was not present on server 2, rsync helped sort this, but we required 6 way read / writes to try sort this. In the end it was just far too complex. We created a network mount for "images", but again it created another bottle neck.

 

----------

 

Our New Setup

1) Amazon RDS Database Server - This can be easily scaled / managed as required with no downtime.

2) Amazon EC2 Webserver - With careful planning this can be scaled up / down as required with minimum downtime.

 

We've upgraded to the 4.4.2 branch of the cart to take full advantage of the heavy architectural changes made in the cart. PHP7 is now fully supported too. We've also used Varnish and the Full Page Cache addon.

 

Our new website is much more simple, and performance is incredibly fast.

From performance point of view, sessions / cache etc should all use the "file" method.

 

We've still some stray mysql queries that need tweaking, and still had some EC2 issues that needed some tuning,

 

http://blog.cs-cart....00000-products/

 

 

Stephen


www.cartbooster.ie


 
  • sdetweil
  • Advanced Member
  • Trial users
  • Join Date: 13-Apr 15
  • 105 posts

Posted 12 October 2017 - 11:56 PM #3

Hi,

 

We've struggled with this for years, these are some of the problems we've had over the years, hopefully can save some others the heartache we've had.

 

1) - Our Peak Season Setup for past 5 years

 

1 x MySQL Server / Load Balancer (Round Robin)

6 x Web Server

 

Web Server 1 was the master server and used rsync to updates files changes across the board,

 

Problems:

• The system architecture of doing this method is severely bottle necked, we added more web servers to reduce load, but we were putting plasters on cuts rather than stopping severe bleeding.

 

• Storing all data / theme cache in "file" method is the most effective, but each web server wrote its own version to its own local var/cache folder, this caused major issues with the website looking for cache / variables that didn't exist. Mainly the issue for us here was product options not being viable to select / checkout. To solve this we mounted "var" as a network mount, but this created its own bottle neck.

 

• Thumbnail cache is dynamic like the website / theme cache, thumbnails created on server 1, was not present on server 2, rsync helped sort this, but we required 6 way read / writes to try sort this. In the end it was just far too complex. We created a network mount for "images", but again it created another bottle neck.

 

----------

 

Our New Setup

1) Amazon RDS Database Server - This can be easily scaled / managed as required with no downtime.

2) Amazon EC2 Webserver - With careful planning this can be scaled up / down as required with minimum downtime.

 

We've upgraded to the 4.4.2 branch of the cart to take full advantage of the heavy architectural changes made in the cart. PHP7 is now fully supported too. We've also used Varnish and the Full Page Cache addon.

 

Our new website is much more simple, and performance is incredibly fast.

From performance point of view, sessions / cache etc should all use the "file" method.

 

We've still some stray mysql queries that need tweaking, and still had some EC2 issues that needed some tuning,

 

http://blog.cs-cart....00000-products/

 

 

Stephen

 

what bottlenecks did u find with var mounted?   I am just finishing up on an elastic beanstalk deployment design, and want to make sure I solve these problems..



 
  • FDGWEB
  • Junior Member
  • Authorized Reseller
  • Join Date: 20-Aug 10
  • 145 posts

Posted 18 October 2017 - 10:18 PM #4

+1 up-vote for this setup:

 

Our New Setup

1) Amazon RDS Database Server - This can be easily scaled / managed as required with no downtime.

2) Amazon EC2 Webserver - With careful planning this can be scaled up / down as required with minimum downtime.

 

 

rSync alone is never a solution for scale when dealing with transnational systems.


FDG Web, Inc - Seattle Web Design : Custom CS-Cart Programming & Design | Toll-Free: 877.239.3083

Download Proposal Templates & Web Design Contract Samples

 
  • sdetweil
  • Advanced Member
  • Trial users
  • Join Date: 13-Apr 15
  • 105 posts

Posted 21 October 2017 - 04:36 PM #5

what bottlenecks did u find with var mounted?   I am just finishing up on an elastic beanstalk deployment design, and want to make sure I solve these problems..

man is EFS slow..  hoping the CDN will offset.. only admin writes (images, cache) will be slow



 
  • sdetweil
  • Advanced Member
  • Trial users
  • Join Date: 13-Apr 15
  • 105 posts

Posted 24 October 2017 - 10:57 AM #6

man is EFS slow..  hoping the CDN will offset.. only admin writes (images, cache) will be slow

Adding CDN to the design improves response time into the acceptable range for customers.