The Sitecore Scaling Guide
Architecture Overview
Scaling Scenarios
Stand-Alone Environment
When Sitecore is installed on an individual developer's machine, a single instance is performing every single role. This setup is not recommended for production environment.
Minimum Recommended Starting Point for Production (without xDB)
Sitecore's minimum recommended starting point for production includes: * One or more content delivery servers * A dedicated content management servers * One or more dedicated content database servers .. image:: source/_static/images/scaling/minimum-recommended.png In this setup: * Load on content delivery will not affect content management and vice versa * Load distributed across multiple content delivery servers * More secure - editor interfaces are not accessible from the public-facing website e.g. http://www.sitecore.net/sitecore If you run Experience Management without the xDB, you can choose whether to use in-proc session state (with sticky sessions) or out-proc session state (without sticky sessions). Read more about the minimum recommended setup for Experience Management with the xDB.
Minimum Recommended Starting Point for Production (with xDB)
Sitecore's minimum recommended starting point for a production environment that includes the xDB: * One or more content delivery servers * A dedicated content management servers * One or more dedicated content database servers * A dedicated session state server and database * A dedicated collection server and database Optionally but recommended: * A dedicated reporting server and database Processing and the reporting service can share the CM server. In the scenario, you are obliged to use Solr for search because the CM is on the same server as processing. In this setup: * Load on content delivery will not affect content management and vice versa * Load distributed across multiple content delivery servers * More secure - editor interfaces are not accessible from the public-facing website e.g. http://www.sitecore.net/sitecore Read more about the minimum recommended setup for Experience Management with the xDB.
Vertical Scaling
Recommended Roles Vertical Scaling ################################## * CM, CD, and content databases on separate servers * Content DBs on one server each Frequently Combined Server Roles ################################## * Content management * Content delivery
Horizontal Scaling
* Multiple content delivery * Multiple content management * Multiple content database servers * Multiple databases * Multiple processing servers - mention the limit + how to configure what job they do
Server Clusters and Geographic Distribution
* CD clusters; must have dedicated session state * Can replicate web databases * Can have a CM per cluster if you want * Not possible to replicate master db in a meaningful way * Can shard xDB but cannot guarantee where contact goes
Isolated Environments
Mirroring and Failover
Replication and Sharding
Combined Server Roles
Session State
Sitecore in the Cloud
Sitecore Without the xDB
Session State ###################################
A Note About Proximity
============================= Event Queue
Scaling Experience Management
There are three possible setups available:
- Add more content delivery servers
- Add more content management servers
- Move publishing to a dedicated instance
- Geographically distributed clusters
- Session state checklist
- Caching