ShopSite Is Lightweight and Fast, Just Like Facebook

codeI was reading a recent article at Ecommerce Developer that discussed how Facebook drastically reduced CPU usage and memory requirements, and sped up performance by converting much of their PHP based code to compiled C++ programs. Translated, Facebook optimized their programming to be faster and less resource intensive by using a better language (C++). If it’s good enough for the largest application on the planet, then it stands to reason it’s a good idea for ecommerce software as well.

ShopSite is written in C

ShopSite, our favorite ecommerce application, is actually written in C, and is pre-compiled. Facebook realized that compiled C code is faster and uses less CPU cycles and memory. This gives ShopSite an edge over other ecommerce applications that are written in PHP, Perl, or ASP. Having software that is already compiled skips the often resource intensive step of processing the code on the fly each time it is run.

ShopSite creates static HTML pages

In addition to using C, ShopSite’s catalog pages are static HTML. The pages are created on a publish, and exist as actual web pages for a merchant. This means that there is no delay in serving pages to visitors. Many other applications generate their catalog pages on the fly each time they are requested, which introduces delays and slower page loads overall.

ShopSite uses SQLite as its database engine

SQLite is a standalone database system that is self-contained in one file. It has many advantages such as portability, and more importantly, very fast response times and atomic commit support. What does this mean? It means the database behind the scenes is optimized for speed, security, and safety. Since it’s a standalone file, it is not affected by other users / databases as is the case with other database system such as MySQL or MS SQL.

What’s all of this amount to?

Put this all together, and you get the following industry leading advantages:

  • The ecommerce software is fast (cart, catalog pages, search, etc…)
    The catalog pages are static HTML files, which are faster than dynamically built pages. Do visitors care? A recent study found that the average customer will only wait 2 seconds before surfing somewhere else. Does Google care? It certainly seems like they do, as Google is now measuring site performance and load time.
  • The software is lightweight, using less resources
    Less CPU cycles consumed, less memory used per visitor translates into better performance and the ability to handle more visitors without affecting overall server performance. That means that large spikes in traffic (like being featured on Oprah) will be better handled by ShopSite than by another ecommerce application written in PHP or ASP.
  • The database is secure and segregated
    ShopSite’s database is not connected to a shared database system like MySQL or MS SQL. This makes it more secure, and avoids any issues with other databases that could cause performance problems with the overall database server.
  • Multiple stores will not degrade overall server performance
    When multiple stores / websites are sharing the resources of a server, less optimized ecommerce applications (like Magento) can quickly degrade a server’s performance. As additional CPU and memory are consumed (especially with high traffic), sites may become sluggish or even have database errors due to too any connections. ShopSite avoids this by using SQLite and utilizing pre-compiled C code. It scales well in any shared environment, or for a company that manages multiple stores on one dedicated server.

Put it all together and you have an ecommerce application that is much faster than other solutions, uses less resources, and is secure and isolated from other databases and websites on the server. Combine this with ShopSite’s wide array of features, continual development, and great add-ons (shameless plug), and it makes for a robust solution that fits the bill for any size merchant (we host ShopSite merchants that range from selling one item to a Top 100 ecommerce retailer).

Photo Credit

Looking for a web host that understands ecommerce and business hosting?
Check us out today!

2 Comments

  1. Mike N. says:

    This all sounds great but… Why is it taking 3 to 5 minutes to return search results on our ShopSite site?
    http://www.restorationpartssource.com/store/
    If you have some suggestions besides running the ‘Compact’ utility, which we have to request our host (Verio) to do for us because it always times out on us… We are all ears!
    It can also take us literally hours to upload new product files. We have spoken with ShopSite and Verio directly and they all seem clueless for the most part.

    • Mike,

      That is definitely not normal. We have merchants with 10,000+ products whose searches are almost instant. DB uploads in ShopSite should also be quick.

      A few things you can check:
      – If the server your account is on is overloaded, or is running slow, this will impact dynamic events like search, uploads, etc…
      – A very busy server (or VPS node) can have slow FTP speeds, as well as slow script execution
      – Make sure you’re running the latest version of ShopSite (10 SP1 r1).
      – Ask your host what the average load of your server/VPS is, and if there are any users / processes that are hogging resources like CPU or high disk usage (called IO wait).
      – To maximize search performance, make sure your stoplist excludes common words and disable stemming.

Leave a Reply to Rob Mangiafico