This topic describes services and setup options to deploy and scale Episerver CMS sites. It is intended for hosting professionals and partner developers who configure and deploy Episerver CMS sites in different infrastructure environments.
How it works
You can deploy Episerver CMS sites to a distributed infrastructure and failover protection that supports availability and scalability. Episerver CMS is multi-tenant, meaning that a single running IIS application of CMS can host multiple websites using a shared database. The sites can share content, and you can quickly launch new websites from the administration view in CMS.
You can maintain one installation which you can deploy to multiple servers, supporting all of the websites. Elastic scaling, where you add and remove servers on demand, lets you upsize and downsize the infrastructure capacity. Episerver CMS provides a set of services to facilitate cloud deployment, such as providers for event management and BLOB storage.
Multi-site setup and deployment scenarios
A multi-site setup is where all websites in CMS share the same file structure on the web server and the same database for storage. Websites in a multi-site setup can share the same content assets, such as media files and blocks. You also can have site-specific content folders for content that should not be shared between sites.
Because Episerver CMS is multi-tenant, you can...
- Run your websites on the same IIS application as long as you configure the site IIS to respond to multiple host names.
- Launch new sites from the Episerver CMS admin view without any additional configuration, if the IIS site is configured to respond to any host name.
- Remove sites when they are not needed anymore, providing a more cost-efficient way of managing website infrastructure.
- Isolate sites to run on multiple IIS applications, for example, if you have specific security or performance requirements, in which case you configure a new site outside Episerver.
Deployment using XCOPY
You can install Episerver CMS through XCOPY deployment by copying application files. An XCOPY-style file transfer simplifies deployment and maintenance of Episerver sites because it does not create registry entries, and it does not register shared components. An example of XCOPY-style hosting is Azure Web Sites, where only a directory is provided, and you cannot run an installation setup procedure.
Another benefit of the XCOPY architecture in Episerver CMS is that it does not store machine- or site-specific information in configuration files, so you can use a shared folder for multiple servers. During development in a shared environment with source control, developers can keep configuration files checked-in and still create a site that can be duplicated in a multi-site deployment.
See also the following deployment scenarios.
The event management system distributes events between IIS applications on the same physical server or among Episerver sites on separate servers in a load-balanced environment. The event management system in Episerver is provider-based, and you can use the built-in event provider or develop your own customized one. See the Event management topic for information.
The Episerver platform supports BLOB (binary large object) storage of assets using a provider-based setup. The BLOB provider stores large amounts of media binary data (perhaps using cloud storage), while Episerver CMS stores metadata for media files in the database. You can use the built-in BLOB provider for media files, or develop your own customized one. See the BLOB storage and BLOB providers topic for information.
When you use cloud services, the database can be an on-premises SQL database, an Amazon RDS instance, or an SQL Azure database. You define the site database during deployment, see Installing the database schema for information.
The license file contains information about licensed servers and sites, different options exist. You can run Episerver without a license file in IIS Express during development, but requires a licence file when you deploy the solution to a server. See the Episerver License Center topic for information.