DXP Cloud hosting considerations
Outline
- Platform: Optimizely DXP Cloud is a PaaS built on Microsoft Azure.
- Managed: Infrastructure, patching, and scaling handled by Optimizely.
- Key services: Azure App Service, SQL Database, Blob Storage, Redis Cache, CDN.
- DevOps ready: Built-in CI/CD pipelines, deployment slots, and environment overrides.
- Best practices: Stateless apps, distributed caching, externalized configuration, monitoring.
This module provides a detailed overview of key considerations for hosting Optimizely solutions in the Optimizely Digital Experience Platform (DXP) Cloud, a fully managed Azure-based environment.
1. Optimizely DXP Cloud overview
DXP Cloud abstracts infrastructure management and provides a fully managed environment for CMS and Commerce applications, enabling teams to focus on building digital experiences rather than maintaining servers.
Key benefits ▼
- Scalability: Automatic scaling for web apps and databases based on demand.
- Reliability and high availability: Redundancy across Azure regions minimizes downtime.
- Security: Azure security features including WAF and DDoS protection.
- Managed services: Patching, updates, and operational overhead handled by Optimizely.
- Integrated CI/CD: Built-in pipelines for automated deployments.
- Global reach: Azure CDN for worldwide content delivery with low latency.
2. Architectural components in DXP Cloud
Optimizely solutions on DXP Cloud utilize multiple Azure services to deliver high-performing and scalable applications.
Azure App Service (Web Apps) ▼
- Core hosting: CMS and Commerce apps run on Azure App Service.
- Multiple instances: Ensures high availability and load balancing across requests.
- Deployment slots: Supports zero-downtime deployments by staging new versions before swap.
Azure SQL Database ▼
- Managed database: CMS content, Commerce data, and user information stored here.
- Scaling and backups: Automatic scaling, point-in-time backups, and high availability built in.
Azure Blob Storage ▼
- Media storage: Images, videos, and documents stored outside the web app.
- CDN integration: Fast global delivery of media assets via Azure CDN edge nodes.
Azure Search (Optimizely Search & Navigation) ▼
- Search indexing: Optimizely Search and Navigation is hosted on Azure Search / Azure AI Search.
Azure Redis Cache ▼
- Distributed caching: Maintains cache consistency across multiple web app instances.
- Session state: Optional distributed session management for stateless apps.
Azure CDN ▼
- Global content delivery: Caches static assets at edge locations for fast load times worldwide.
3. Deployment process in DXP Cloud
DXP Cloud uses Git-based CI/CD pipelines to streamline deployments across Integration, Preproduction, and Production environments.
CI/CD pipelines ▼
-
Automated builds: Triggered when code is pushed to designated branches (e.g.,
integration,master). - Deployment environments: CI/CD pipelines are linked to environment-specific branches.
- Deployment slots: Stage new versions and swap into production with zero downtime.
Environment-specific configuration ▼
-
appsettings.jsonoverrides: Use environment-specific files (e.g.,appsettings.Preproduction.json) to layer settings per environment. - Azure App Service application settings: Override sensitive values securely without committing them to source control.
4. Best practices for developing on DXP Cloud
- Stateless web apps: Avoid storing session state in-memory; use Redis for distributed session state.
-
Distributed caching: Always use
IDistributedCachebacked by Azure Redis Cache. - Externalized configuration: Keep environment-specific settings in Azure App Service Application Settings or Key Vault.
- Logging and monitoring: Use structured logging (e.g., Serilog) and integrate with Azure Application Insights.
- Media handling: Store media in Azure Blob Storage and serve via CDN caching.
- Database interactions: Use async queries, efficient SQL, and connection resiliency patterns.
- CI/CD and deployment: Automate tests, use deployment slots, and maintain a rollback strategy.
5. Example: appsettings override in DXP Cloud
The following shows a typical environment-specific appsettings.json override file, covering connection strings, logging levels, and feature flags.
Conclusion
DXP Cloud provides a scalable, secure, and managed platform for Optimizely CMS 12 and Commerce 14. Understanding its architecture, leveraging automated deployments, and following cloud-native best practices ensures robust, high-performing, and maintainable solutions.
