Speeding Up Cs-Cart (Attempts)

[quote name='mazter' timestamp='1414695196' post='195731']

For those who would like to bring this up to CS-Cart's attention, you can see the topics in uservoice that relates to this:



http://cscart.uservo…peed-of-cs-cart 33 votes (2nd page)

http://cscart.uservo…g-use-memcached 22 votes (3rd page)

http://cscart.uservo…rt-with-litespe 17 votes (5th page)



If you are interested in improving CSCart's page speed, you should go ahead and vote for these in order for CS-Cart to take action on these issues.

[/quote]

Voted on all 3 speed issues.

WEBO was working perfect for us too until version 4. I asked them for the upgrade and they wanted $999 usd.

Cscart should have those configurations webo offered for free. Its like buying a car without an engine. Or a Ferrari but with a motor of a civic. Just open the source code of any page. You will see tens of white spaces, should they be there? Why there is still statistics script?

[list]

[*]http://www.site.com/var/cache/misc/statics/js/tygh/scripts-6b780127935de364fbec24997059a6031415739160.js?ver=4.2.2

[/list]

Yes there is tons of updates every year but we dont want more nice template updates. Site function, Speed should be your first priority. Let people pay for the templates, addons, but the basic functions should be there.

[quote name='silverbestbuy' timestamp='1415807049' post='196787']

WEBO was working perfect for us too until version 4. I asked them for the upgrade and they wanted $999 usd.

Cscart should have those configurations webo offered for free. Its like buying a car without an engine. Or a Ferrari but with a motor of a civic. Just open the source code of any page. You will see tens of white spaces, should they be there? Why there is still statistics script?[list]

[*][url=“http://www.site.com/var/cache/misc/statics/js/tygh/scripts-6b780127935de364fbec24997059a6031415739160.js?ver=4.2.2”]Custom Application Development Software for Business - Salesforce.com

[/list]

Yes there is tons of updates every year but [color=#ff0000]we dont want more nice template updates. Site function, Speed should be your first priority.[/color] Let people pay for the templates, addons, but the basic functions should be there.

[/quote]



totally agree +10000000000

Even using the best VPS, SSD, Good RAM, CDN, few addons, and trying to make it fast and clean , I'm not 100% convinced yet with the performance of cscart.

I'm seriously thinking about take a look to another option.

The Cscart Team should concentrate all efforts on improving the speed and performance.

We have three direction of performance optimization we are working at the moment:

  • SQL queries, at the moment we achieved ~70% decreasing of heavy queries execution (get products on the category view). Also we are optimizing SQL queries we will decrease the number of queries as much as we can
  • Cache improvements- we are going to cache everything that only possible. Main content, product blocks etc. This has decreased the CPU load for ~30% on light VPS server with 5 concurrent queries.
  • Client side optimization (how faster the page is loaded in the browser), improve our scores in Google page speed (minimize js, remove some fonts, etc)



    The 4.3 would be really faster!

imac,



That sounds amazing! Regarding cache improvements, please cache “product options” too.



What's the approximate release date of version 4.3?

[quote name='ghostrider' timestamp='1417521623' post='198541']



That sounds amazing! Regarding cache improvements, please cache “product options” too.



[/quote]

We will cache the main-content block completely so products options will be included.


[quote]

What's the approximate release date of version 4.3?

[/quote]

I hope we will release a public Beta in the end of January 2015. But these are just hopes at the moment.

We won't release until we are sure it is really amazing:)

Sounds promising, keep up the good work !

On the topic of speed, great to see Cloudfront integration but I raised a concern here that no one seems to know anything about:



Adding Query Strings To Images After Cdn Is Enabled? - Configuration - CS-Cart Community Forums



This appears to impact the latest version of the cart and appears to be undocumented as I could not find anything on the release notes.



Adding query strings and cookies to all the CDN served content seems to have really upset the usual website benchmarking tools.



Complaint's about non parallel downloads, query strings, content served from domains with cookies, etc.



Did adding the query strings hurt real world performance? Also, were they added because of issues with resource invalidation on the Cloudfront bucket? The resources we serve are very static and the default TTL of 24 hours from Cloudfront seems fine.

If anything, options to check/uncheck the query string should be there as well as options to have the cart tell Amazon when to manually invalidate resources on the edge.



Thanks in advance for the help.

Also, if you want really good speed with CDN's it would be great for you to implement domain sharding. So far, you can only attach to one Cloudfront distribution and use only one CNAME.



Being able to alternate between two distributions and use two CNAMEs would be fantastic for parallel downloads.



Thanks

[quote name='imac' timestamp='1417521262' post='198540']

We have three direction of performance optimization we are working at the moment:

  • SQL queries, at the moment we achieved ~70% decreasing of heavy queries execution (get products on the category view). Also we are optimizing SQL queries we will decrease the number of queries as much as we can
  • Cache improvements- we are going to cache everything that only possible. Main content, product blocks etc. This has decreased the CPU load for ~30% on light VPS server with 5 concurrent queries.
  • Client side optimization (how faster the page is loaded in the browser), improve our scores in Google page speed (minimize js, remove some fonts, etc)



    The 4.3 would be really faster!

    [/quote]

    Thats great news. Any chance of getting LiteSpeed Cache support? That would also be a massive speed up,

[quote name='imac' timestamp='1417521262' post='198540']

We have three direction of performance optimization we are working at the moment:

  • SQL queries, at the moment we achieved ~70% decreasing of heavy queries execution (get products on the category view). Also we are optimizing SQL queries we will decrease the number of queries as much as we can
  • Cache improvements- we are going to cache everything that only possible. Main content, product blocks etc. This has decreased the CPU load for ~30% on light VPS server with 5 concurrent queries.
  • Client side optimization (how faster the page is loaded in the browser), improve our scores in Google page speed (minimize js, remove some fonts, etc)



    The 4.3 would be really faster!

    [/quote]



    Sound great! CSCART improving the performance is the most important.

    Thank you Imac for your keep us updated and the great job of all the team.

[quote name='P-Pharma' timestamp='1417554057' post='198590']

Thats great news. Any chance of getting LiteSpeed Cache support? That would also be a massive speed up,

[/quote]



Unfortunately not in plans.

After some tests we came to conclusion that reddis is the most efficient cache backend at the moment.

[quote name=‘imac’ timestamp=‘1417789249’ post=‘198851’]

Unfortunately not in plans.

After some tests we came to conclusion that reddis is the most efficient cache backend at the moment.

[/quote]



great ideas for improving performance… i hope the 4.3 will be available soon :)

[quote name='goncharov' timestamp='1413488927' post='194387']

[size=3][color=#000000][font=LucidaGrande]I'm glad to answer your questions and give some tips on performance boost. The speed of the web service depends greatly on your project – there is no silver bullet. [/font][/color][/size][color=#000000][font=LucidaGrande][size=3]There are several common techniques to increase the performance of the CS-Cart store: use KeepAlive, split static content from the dynamic one, use gzip/deflate data compression, use expires headers, use opcode caching, store user sessions in Redis, configure MySQL correctly, etc. The results[/size][/font][/color][color=#000000][font=LucidaGrande][size=3] depends on correct server settings.[/size][/font][/color]



[/quote]



Hello,



Can you explain where in the config one can setup splitting static from dynamic content? Or did u mean simply from a file base perspective? Overall, I am looking to offload as much as possible from the MySQL as possible.



So:


  1. Where in the config do I setup user sessions on Redis?
  2. I want Redis to live as a separate stand alone server (AKA like Memcached) - so that it offloads from the servers and MySQL - will that work with cs-cart?
  3. Our main bottleneck is the MYSql server, we can always scale vertically. But before I do that, my hope is to offload as much as possible from it, and serve the content from cache before hitting the DB.



    There is a config setting for cache - is that user session or also file content? Thanks!

[color=#000000]Hello,[/color]



[size=3][quote name='Roguewarrior' timestamp='1418227631' post='199374'][/size]Can you explain where in the config one can setup splitting static from dynamic content?[/quote]



[font=lucida sans unicode,lucida grande,sans-serif][size=3][color=#000000]If you are using Apache as a backend-server, a good way to increase CS-Cart speed is to install NginX as an accelerator and configure it to download the static content directly (such as images, scripts, style sheets, fonts, etc.). It will allow to offload the CPU on a large number of HTTP. requests it .[/color]

[color=#000000] [/color][/size][/font]

[size=3][quote name='Roguewarrior' timestamp='1418227631' post='199374'][/size][size=3]1) Where in the config do I setup user sessions on Redis?[/size][/quote]



[font=lucida sans unicode,lucida grande,sans-serif][size=3][color=#000000]If you install Redis on a dedicated server and store all CS-Cart cache and user sessions on it, the load on the CPU will decrease. You can change it to config.local.php.[/color][/size][/font]



// To use sqlite cache the "sqlite3" PHP module should be installed
$config['cache_backend'] = 'redis';
$config['cache_redis_server'] = 'localhost';
$config['cache_redis_global_ttl'] = 0; // set this if your cache size reaches Redis server memory size

// Storage backend for sessions. Available backends: database, redis
$config['session_backend'] = 'redis';
$config['session_redis_server'] = 'localhost';




[size=3][quote name='Roguewarrior' timestamp='1418227631' post='199374'][/size][size=3]2) I want Redis to live as a separate stand alone server (AKA like Memcached) - so that it offloads from the servers and MySQL - will that work with cs-cart?[/size][/quote]



[font=lucida sans unicode,lucida grande,sans-serif][size=3][color=#000000]Unfortunately, it cannot help you offload MySQL but will take a load off from I/O and CPU (%iowait). Our tests revealed that Redis is more than 30% efficient than the default file cache backend. Placing the cache in RAM may be useful if your site is degraded due to the load on the disk.[/color][/size][/font]

[color=#000000]If you are using Apache as a backend-server, a good way to increase CS-Cart speed is to install NginX as an accelerator and configure it to download the static content directly.[/color]

[color=#000000]You must be talking to coders because to me it sounds like…[/color]

[color=#000000]To perform brain surgery, simply open skull and fix problem.[/color]

[quote name='imac' timestamp='1417522294' post='198543']

We will cache the main-content block completely so products options will be included.





I hope we will release a public Beta in the end of January 2015. But these are just hopes at the moment.

We won't release until we are sure it is really amazing:)

[/quote]

Are you guys still on schedule to release a public beta of 4.3 by the end of this month? How long do you expect beta testing to take before launching a stable release?

Beta testing will take approximately 1-2 months.

Public beta is still in plan for this month or early February.

Hi guys,



don’t forget brand logo images to cache…serve all media files from amazon when enabled also :)



Regards

Džemal