Development considerations
This topic describes developing solutions for a cloud environment, specifically for Optimizely Digital Experience Platform (DXP).
Running your solution in any cloud environment requires strategies. Following these recommendations helps to ensure smooth deployment and good site performance.
DXP and Azure resources
Although Optimizely DXP is based on Azure components, you should not create additional Azure resources using your DXP account because any such resources could be deleted during deployment clean-up. However, you can create additional accounts to manage integration with other cloud services.
Note
Adding Custom Application Settings and/or Custom Connection Strings is supported only through client code. Optimizely DXP does not support custom settings within the Azure Portal.
DXP and Web Apps
In Optimizely DXP, a Web App is a solution built on the Optimizely platform and operating as an Azure Web App including an SQL Database, a BLOB storage, and an Optimizely Search & Navigation index.
A default configuration of DXP for packages Group, Corporate, Enterprise includes one Web App, a CDN, and three environments - Integration, Preproduction, and Production. You can run multiple websites on one Web App (DXP license) without restricting the number of websites. The websites will share the same code base and the same Search & Navigation search index.
Some specific scenarios may require separated code bases, in this case, you can add additional Web Apps to the Group, Corporate, and Enterprise configurations. These Web Apps are included within the same DXP, and additional page views or content items are counted toward the total amount for the primary configuration.
Single and multisite and Web Apps
- A single Web App means a shared code base, which means reduced cost, less complexity, shared content and users, and shopping carts for ecommerce sites.
- A single Web App lets you follow best practices for object-oriented code reuse, making development, upgrading, testing, and deployment easier.
- Multiple Web Apps may sometimes be required to fulfill specific requirements.
See Multisite development for information about multisite scenarios.
Integrate with Azure AD
Azure Active Directory (Azure AD) is Microsoft's multi-tenant cloud-based directory and identity management service. Azure AD provides single sign-on (SSO) access to many cloud-based SaaS applications and includes identity management capabilities. See Integrate Azure AD using OpenID Connect.
Logging
Optimizely DXP redirects Optimizely logs into .NET Diagnostic Trace if the code uses the Optimizely logging abstraction EPiServer.Logging.LogManager
.
If you are using log4net and deploying to DXP, replace log4net with EPiServer.Logging
. See also Logging for information about switching logging APIs.
Index with Optimizely Search & Navigation
When running Optimizely DXP cloud services, Optimizely Search & Navigation is included by default for search functionality.
Note
Indexing with Search & Navigation is "real-time" and managed through code. You do not need to use the catalog indexing options available in Commerce Manager, and as scheduled jobs in Optimizely Content Management System (CMS) Admin. These are used for other search provider solutions.
Related blog post: Scheduled jobs setup in DXP
Updated 8 months ago