Learn more about recommendation when is comes to infrastructure and database.
The number of page views and Peak Load are two important metrics for determining the optimal infrastructure sizing for a project.
The following presents recommendations based on the environment and the number of expected page views.
100.000 page views per month or less: Database: CPU 2, 4-8 GB RAM, 50GB disk
500.000 page views per month or less: Database: CPU 4, 8-16 GB RAM, 100GB SSD disk
1.000.000 page views per month or less: Database: CPU 8, 16-32 GB RAM, 250GB SSD disk
1.000.000 page views per month or more: Please contact our Expert Services team to discuss the infrastructure requirements.
Due to the rapidly changing naming and sizing of Azure instances, we recommend using the appropriate supplier tools to determine the exact sizing. Base the sizing on the non-cloud recommendations above.
In general, for Azure SQL, use at least a S3 instance for production purposes.
100.000 page views per month or less: Professional
500.000 page views per month or less: Professional (with dedicated resources)
500.000 page views per month or more: Professional / Enterprise (with dedicated resources)
Always discuss the exact requirements with your agency or the Umbraco Cloud team. Discuss Prioritized Cloud Computing, Prioritized Database Performance, and Dedicated Resources based on the expected load.
Above you will find general recommendations on which infrastructure parameters to use. While these should work well for most cases, you may need to adjust the infrastructure parameters to suit your page view processing workload. Large or heavily trafficked websites may have higher requirements. If you expect high page view peaks it is recommended to scale to a tier higher than normal.
Recommendations for using Umbraco Engage within a load-balanced setup.
Make sure your Umbraco is set up according to best practices. Please refer to the Umbraco documentation for more details.
For the Cockpit to function properly it is necessary that the cockpit can read the Umbraco login cookie. Umbraco and the site should run on the same domain or sub-domain.
For example:
Umbraco: umbraco.domain.com
Site: domain.com
Make sure the AuthCookieDomain
in your SecuritySettings of your Umbraco config has the following value:
To learn more, read the documentation about the SecuritySettings
You need to configure machine keys and data protection to use the same keys on all servers (content delivery and content-management).
Without this setup, each server will generate its own key. This will result in the Umbraco authentication cookie being encrypted and decrypted using different keys leaving the Cockpit unusable on the frontend servers.
To learn more, read the Load Balancing article in the Umbraco CMS documentation.
Umbraco Engage will perform a ping (POST) to detect if the visitor is a visitor or a bot. The umbraco/engage/pagedata/ping
URL should be accessible from the content delivery and front-end servers. Make sure no firewall or other mechanism is blocking POST requests to umbraco/engage/pagedata/ping
. If this URL is blocked, all visitors will be treated like a bot and no analytics data is collected.
Make sure the IsProcessingServer
is set to true
on the content management (Umbraco) environment and to false
on the content delivery or front-end servers.
The setting can be set in yourappSettings.json
file.
Sticky sessions, also known as session affinity, are essential for the proper functioning of Umbraco Engage in a load-balanced environment. Sticky sessions can be enabled using different methods such as cookie-based, IP-based, or URL-based session affinity, depending on the load balancer configuration. By enabling sticky sessions, you can ensure that user sessions remain intact and data consistency is maintained across the Umbraco Engage application. Sticky sessions will ensure that analytics, A/B testing and personalization works properly.
For specific instructions on enabling sticky sessions, refer to the documentation or configuration settings of your load balancer.
Learn more about recommendations when working with the Content Delivery Network.
This article provides information and best practices on using Content Delivery Network (CDN) with Umbraco Engage.
Do not cache pages on the CDN level. Umbraco Engage is based on serving a unique page to every (returning) visitor. By enabling page caching every visitor will be assigned the same Umbraco Engage ID and Analytics, A/B testing, and Personalisation will not work correctly.
It is possible to cache static CSS and JavaScript files. Refer to the documentation of the CDN provider for the best-practice setup.
It is possible to cache /media
files. Refer to the documentation of the CDN provider for best-practice setup.
The Cockpit is a tool to let you view data directly on the front end of the website.
Umbraco Engage includes a cockpit feature to help verify the tracking of analytics and understand personalization behavior. The cockpit adds a button to the front end, giving real-time insights.
To add the cockpit to your website:
Render the HTML partial provided by Umbraco Engage.
The partial view is located at /Views/Partials/Umbraco.Engage/Cockpit.cshtml
.
Insert the following code before the closing </body>
tag:
Once the code is added, reload the page to see the Umbraco Engage Cockpit on the left or right side of the screen. The cockpit will only be rendered if the user is logged into Umbraco.
Clicking the Open button provides detailed information:
Find information to effectively integrate and customize Umbraco Engage within your environments.
In this section, you will find essential information on system requirements, licensing details, and infrastructure considerations.
Get insights on sizing your infrastructure to meet your project's demands.
Discover best practices for setting up load balancing and managing continuous integration and deployment environments.
Explore recommended CDN options to improve content delivery speeds.
View with the technical aspects of the Cockpit for managing marketing features within Umbraco Engage.
If you do not see the Cockpit while the Umbraco backoffice runs on a different domain please refer to the section.