Adobe recommends that you always set up Elasticsearch or OpenSearch for your Adobe Commerce on cloud infrastructure project even if you plan to configure a third-party search tool for your Adobe Commerce application. This configuration provides a fallback option in case the third-party search tool fails.

The search engine you use depends on the Adobe Commerce on cloud version installed:

  • For Adobe Commerce 2.4.4 and later, use the OpenSearch service for native MySQL search.

  • For earlier Adobe Commerce versions, use Elasticsearch.

To determine which search engine is currently in use, run the following command:

./bin/magento config:show catalog/search/engine

For configuration instructions, see the Developer Guide for Adobe Commerce on cloud:

Avoid custom triggers

Avoid using custom triggers if possible.

Triggers are used to log changes into audit tables. Adobe recommends configuring the application to write directly to the audit tables instead of using the trigger functionality for these reasons:

  • Triggers are interpreted as code and MySQL does not precompile them. Hooking onto your query’s transaction space, they add the overhead to a parser and interpreter for each query performed with the table.
  • The triggers share the same transaction space as the original queries, and while those queries compete for locks on the table, the triggers independently compete on locks on another table.

To learn about alternatives to using custom triggers, see MySQL triggers.

Upgrade ECE-Tools to version 2002.0.21 or higher

To avoid potential issues with cron deadlocks, upgrade ECE-Tools to version 2002.0.21 or higher. For instructions, see Update ece-tools version in our developer documentation.

Switch indexer mode safely

Switching indexers generates data definition language (DDL) statements to create triggers which can cause database locks. You can prevent this issue by putting your website in maintenance mode and disabling cron jobs before changing the configuration.
For instructions, see Configure indexers in the Adobe Commerce Configuration Guide.

Do not run DDL statements in Production

Avoid running DDL statements in the Production environment to prevent conflicts (like table modifications and creations). The setup:upgrade process is an exception.

If you need to run a DDL statement, put the website in maintenance mode and disable cron (see the instructions for switching indexes safely in the previous section).

Enable order archiving

Enable order archiving from the Admin to reduce the space required for Sales tables as your order data grows. Archiving saves MySQL disk space and improves checkout performance.

See Enable archiving in the Adobe Commerce Merchant documentation.

Additional information

Previous pageReporting configuration
Next pageMySQL configuration