Disable Adobe Commerce Banner output to improve site performance
This article provides a fix for low site performance. Low site performance can be caused by the Magento_Banner module being enabled but not used. Disabling the module output can improve site performance. Review this article for resolution steps.
Description description
Environment
- Adobe Commerce on cloud infrastructure v.2.x.x
- Adobe Commerce on-premises v.2.2.x and 2.3.x
Cause
The Magento_Banner module is enabled, but not used.
To check if this is the case:
For Adobe Commerce on cloud infrastructure 2.2.x:
- Log in to the Commerce Admin.
- Navigate to Content
>Elements>Banners. - If the grid displayed on this page is empty, you do not have any banners.
If you do not see the Banners option under Content > Elements, it means that you have already applied the recommendations from this article.
For Adobe Commerce on cloud infrastructure 2.3.x and newer (the functionality was renamed in v 2.3.x):
- Log in to the Commerce Admin.
- Navigate to Content
>Elements>Dynamic Blocks. - If the grid displayed on this page is empty, you do not have any dynamic blocks (banners).
If you do not see the Dynamic Blocks option under Content > Elements, it means that you have already applied the recommendation from this article. To see the banners option again, reverse the process.
Cause
When the Magento_Banner module is enabled, Adobe Commerce sends Ajax requests from the storefront to the server to get the banner information. These Ajax requests have a performance impact, especially in high-load (high-volume and high-traffic) conditions. If the functionality is not used, it is recommended that you disable the module output. It is not recommended to disable the module, because of the dependency issues.
Resolution resolution
Warning: We strongly recommend testing changes on Staging/Integration environment first, before applying it to Production. We also recommend having a recent backup before any manipulations.
- Disable the
Magento_Bannermodule output, as described in Disable module output in our developer documentation. The module name you need to use isMagento_Banner. - Deploy your code. For Adobe Commerce on cloud infrastructure, deploy as described in the Deploy your store article in our developer documentation.
- After disabling the module output, the menu no longer appears in the admin.
- You will no longer see Banner or Dynamic option under Content
>Elements. To show the options again, enable the module output.