Building An Online eCommerce Store? Check Out These New Reference Architectures

Filed in Product & Development by Mahesh Gandhe | February 5, 2013 12:00 pm

For retailers, your online store is the window to the world. It needs to stand up to daily traffic and the unexpected spikes, and offer your customers a safe and secure place to shop on the web. It’s not always easy. We’re here to help.

Based on the knowledge and expertise we’ve gained serving some of the top retailers in the US[1], we’ve launched four new reference architectures[2] for eCommerce solutions. These reference architectures offer you a choice in how you build your online store and are available in for four different levels: Cost-effective, Intermediate, Advanced and Premier. These architectures provide retailers solutions templates for building online stores. Here, we will explore various design options and the Rackspace products that are used in building these solution templates. This blog post will be followed by a series of blogs that will provide detail information about each of these reference architectures.

Use Cases
There are numerous possible use cases for our new reference architectures. We’ve identified the main two as:

Factors To Consider
There are several factors that can influence your choice of a reference architecture. We have identified these as the main ones:

1. Storage of credit card data

The first important factor that dictates choice of a reference architecture is where you want to store credit card data.

Options available for storage
You can either store credit card data in a Rackspace data center or use a third party payment gateway to store credit card information.

How do you decide which option is right for you?
A rule of thumb that will influence this decision is a comparison of costs associated with using a third-party payment gateway and costs associated with storing credit card information in data center.  If you process a smaller number of credit card transactions, you might find that using a third party payment gateway is economical and the best option, provided if it fits within your company policy. If credit card transaction volume is very high, you may find it economical to store credit card information in a Rackspace data center and undergo PCI compliance audits. Your company policy and credit card transactions volume can help determine how you choose to store credit card data.

2. Catalog display logic and shopping cart logic

Typically, catalog display logic translates to the “web” layer and shopping cart logic translates to the “app” layer.

Options available for design
If you keep catalog display logic and shopping cart logic together on the same server, that is called a two-tier architecture. The first tier is composed of a combined web and app tier. The second tier is composed of a database layer. If you choose to keep catalog display logic and shopping cart logic on different servers, that is a three-tier architecture. The web layer is the first tier, the app layer is the second and the database layer is the third.

How to choose between a two-tier or a three-tier architecture?
Based on our experience, we find our customers typically start with a two-tier architecture. As business grows, they start separating two layers so that each tier can scale independently.  Your scaling needs for catalog display and shopping cart will help you decide between a two-tier and a three-tier reference architecture.

Available Rackspace products
Your display logic and shopping cart logic can either run on Cloud Servers[3] or Dedicated servers[4].

With Cloud Servers, you can get powerful Linux and Windows servers in minutes. Cloud Servers is both persistent and highly elastic. You get the best of both worlds since it looks and feels like a traditional server but is on-demand in the cloud.

Dedicated servers, on the other hand, provide a single-tenant environment for your exclusive usage.

How to choose between Cloud Servers and Dedicated servers?
A rule of thumb is to choose a Cloud Server whenever possible. However, there are certain situations those warrant a Dedicated server. If you want to store credit card data in a Rackspace data center, you have to use a Dedicated server. If you prefer a single-tenant environment, as dictated by your company policy, then you also have to use a Dedicated server.

3. Database storage

The way you store data and retrieve data significantly impacts time it takes to complete online transactions.

Options available for database technology
At Rackspace, we provide you three choices for database technology:

  1. You can use Cloud Databases[5], the high performance MySQL database on the cloud. The Cloud Databases architecture is built for high and consistent performance, with container-based virtualization instead of traditional hardware virtualization, high performance SAN storage and a dedicated storage network.
  2. The second choice is a database installed on a Cloud Server connected to Cloud Block Storage[6]. You can enhance the network security of your Cloud Servers by running your shopping cart and database servers on an isolated Cloud Network[7] to filter illegitimate traffic from catalog display. Cloud Block Storage attached to a Cloud Server can provide extra space that your database will require. Using Cloud Block Storage you can get dependable performance for your I/O-intensive applications. Cloud Networks provides customers with the ability to create isolated, layer 2 (L2) networks within the cloud. With the click of a button, you can now create software-defined networks that look like traditional networks in both architecture and function.
  3. The third choice is running a database of your choice on a Dedicated server.

Which database technology option is the best for you?
The type of database and volume of I/O transactions will dictate which database technology is right for you.  Cloud Databases is the best option if you want to use a MySQL database and want Rackspace to manage it for you. If you want to use a database of your choice that supports virtual environments then you can run your own database on Cloud Server. If your database of choice doesn’t support virtualization, or for the highest I/O performance, we recommend running your database on a Dedicated server.  It is difficult to quantify I/O criterion, as it greatly depends on your application logic and varies from environment to environment.

The following flow chart (click to enlarge) summarizes how your business requirements dictate your final choice of the reference architecture:
[8]

Stay tuned for the next blog post, in which we will explore the cost-effective reference architecture and its components in greater depth.

Endnotes:
  1. serving some of the top retailers in the US: http://www.rackspace.com/blog/why-rackspace-is-the-no-1-hosting-provider-for-the-top-1000-e-retailers/
  2. four new reference architectures: http://www.rackspace.com/ecommerce-hosting/reference_architectures/
  3. Cloud Servers: http://www.rackspace.com/cloud/servers/
  4. Dedicated servers: http://www.rackspace.com/managed_hosting/configurations/
  5. Cloud Databases: http://www.rackspace.com/cloud/databases/
  6. Cloud Block Storage: http://www.rackspace.com/cloud/block-storage/
  7. Cloud Network: http://www.rackspace.com/cloud/servers/
  8. [Image]: http://ddf912383141a8d7bbe4-e053e711fc85de3290f121ef0f0e3a1f.r87.cf1.rackcdn.com/ecommerce-flow-chart.png

Source URL: http://www.rackspace.com/blog/building-an-online-ecommerce-store-check-out-these-new-reference-architectures/