HomeDev GuideAPI Reference
Dev GuideAPI ReferenceUser GuideGitHubNuGetDev CommunitySubmit a ticketLog In
GitHubNuGetDev CommunitySubmit a ticket

Optimize performance

Describes strategies to run your Optimizely Customized Commerce site at peak performance.

Optimizely Customized Commerce performance depends on many factors. In general, an ecommerce site should perform well enough during peak times that each customer's shopping experience is fluid enough to convert their shopping cart to a sale. In addition, a site should perform well from small catalogs (50-100 products) to extremely large catalogs (100k+).

Consider the following strategies to run your site at peak performance.

Install the latest version of Customized Commerce

  • If possible, upgrade to the latest version of Customized Commerce, which includes performance improvements.

Strategies for large catalogs (300k+ entries)

  • Implement an enterprise-level search provider (like Solr), which can efficiently index a large catalog.
  • Eliminate or reduce the number of calls to the product catalog or database when returning product information during the browsing, search, or checkout process. Search is the critical element with large catalogs because the return of search data to users determines response time.

Strategies for high volume/high load sites

  • Run performance tests before reaching peak times. Customized Commerce contains test scripts to modify to meet your scenarios and needs. You should spend as much time testing your application as implementing it.
  • Implement your site in a load-balanced environment that can handle the expected traffic.
  • Consider a cloud-based hosting environment. Customized Commerce is tested in the cloud. This environment lets you easily and rapidly scale your infrastructure without investing in physical servers.
  • Implement fail-over or backup servers that can handle additional load.

Manage session state

By default, Customized Commerce relies on ASP.NET for managing session states. Enabling session states has a noticeable overhead. To reduce overhead, only enable session state on pages that need it.