Magento performance optimization architecture showing cache, application, database, and storefront layers

Magento 2 Performance Guide

Magento Performance Optimization: How to Make Magento 2 Faster

Magento can handle complex catalogs, pricing, customer groups, integrations, and high transaction volume. It can also become unnecessarily slow when cache misses, inefficient extensions, overloaded cron jobs, database contention, heavy frontend code, or undersized infrastructure compound one another. Effective Magento performance optimization starts by locating the delay, then fixing the highest-impact layer first.

Updated August 16, 2026 · Magento 2.4.x · Backend + Frontend Performance

Magento performance optimization architecture showing cache, application, database, and storefront layers

A fast Magento store needs

01Proper cachingFPC, Varnish or Fastly, and a supported cache backend
02Efficient application codeMeasured PHP, database, module, API, and checkout behavior
03Healthy infrastructureEnough CPU, memory, workers, storage, and service capacity
04A lightweight storefrontControlled JavaScript, CSS, fonts, images, and third parties

01

Start with measurement

Don’t Optimize Magento Until You Know What Is Slow

A “slow Magento store” can describe several different failures. Server response time and time to first byte (TTFB) measure how quickly the origin begins returning HTML. Largest Contentful Paint (LCP) describes when the main visible content renders. Interaction to Next Paint (INP) reflects responsiveness after a user interacts, while Cumulative Layout Shift (CLS) measures unexpected visual movement. These signals require different fixes.

Test representative home, category, search, product, cart, checkout, customer, and API or GraphQL requests. Separate cold-cache from warm-cache tests and guest traffic from logged-in sessions. A fast cached category page does not prove that an uncached search request, checkout total calculation, or customer dashboard is healthy.

Diagnostic map of common Magento backend and frontend performance bottlenecks

Frontend slow

Look for a late hero image, render-blocking CSS, long JavaScript tasks, oversized bundles, fonts, third-party tags, layout shifts, or excessive browser work.

Backend slow

Look for slow PHP transactions, database queries, cache misses, external APIs, plugins, observers, indexing, session contention, or insufficient workers and memory.

Build evidence before changing configuration

  • Use Chrome DevTools, Lighthouse, PageSpeed Insights, and WebPageTest for waterfalls and rendering behavior.
  • Use real-user field data from Search Console, CrUX, an APM browser agent, or your own RUM implementation.
  • Correlate slow URLs with New Relic or another APM, Magento logs, PHP-FPM metrics, system load, cache statistics, and 5xx errors.
  • Enable the Magento profiler or database profiler only in a controlled environment; profiling adds overhead and can expose sensitive query data.
  • Use MySQL/MariaDB slow-query logging, OpenSearch monitoring, Varnish logs, and queue/cron status to test a specific hypothesis.
A speed extension is not a diagnosis. It may alter asset delivery or caching, but it cannot tell you whether the actual bottleneck is an uncached block, a totals collector, a remote shipping API, a database lock, or JavaScript on the main thread.

02

Correct runtime

Run Magento in Production Mode

Default mode is not optimized for production, and developer mode is intended for development and debugging. Production mode expects generated dependency-injection code and deployed static view files, reducing runtime work and preventing source-level debugging behavior from reaching customers.

bin/magento deploy:mode:show
bin/magento maintenance:enable
bin/magento deploy:mode:set production
bin/magento setup:static-content:deploy -f en_US
bin/magento cache:clean
bin/magento maintenance:disable

The exact deployment sequence depends on your release process, themes, locales, multi-node topology, and whether you use Adobe Commerce Cloud. Run compilation and static-content deployment as a controlled build/deploy operation, not casually during live traffic. Test the release on staging and retain a rollback path.

03

Full-page delivery

Use Varnish for Magento Full-Page Caching

Magento’s built-in full-page cache stores rendered public pages, but Varnish is designed to answer cacheable HTTP requests before the full Magento application bootstraps. On an on-premises architecture, TLS commonly terminates at a proxy or web server in front of Varnish, and Varnish forwards misses to the origin. Adobe Commerce Cloud uses Fastly for full-page caching rather than the on-premises Varnish workflow.

Magento Varnish full-page cache HIT and MISS request flow
Area Built-in FPC Varnish
Where a hit is served Within the Magento/PHP stack At the HTTP cache layer before Magento
Best fit Development, lower-complexity deployments, fallback Production catalog and CMS traffic
Operational needs Magento cache backend and invalidation VCL, proxy/TLS routing, purge handling, monitoring
Main risk More PHP work per request Cookies, headers, custom blocks, or VCL mistakes causing misses

Measure HIT and MISS behavior by page type. Repeated anonymous catalog requests should normally become hits after warming, while cart, checkout, customer, and other private responses must remain correctly uncacheable. Inspect response headers and Varnish logs, then trace unexpected misses to cookies, session creation, cache-control headers, custom layout blocks, or overly broad invalidation.

Do not chase hit rate at the expense of correctness. Prices, inventory, customer-specific content, and private data must never be served from an inappropriate public cache entry.

04

Version-specific cache architecture

Configure Magento Cache and Sessions Correctly

There is no longer one correct “use Redis” answer for every Magento 2.4 release. Select the cache and session service from Adobe’s system requirements for your exact version and patch level.

Important for Magento 2.4.9+

Adobe Commerce 2.4.9 supports Valkey, replaces the underlying Zend cache component with Symfony Cache, and supports the modern symfony_l2 backend. Symfony L2 manages local L1 and remote L2 behavior; it does not replace Valkey as the remote service. Adobe directs 2.4.9 and later deployments away from the legacy RemoteSynchronizedCache implementation. Apply the current 2.4.9 cache patches and deployment guidance before enabling advanced options.

Magento 2.4.9 Symfony L2 cache with local cache and Valkey backend

Adobe’s June 2026 guidance states that Redis cache is not supported for 2.4.9 or for patch releases later than 2.4.8-p4, 2.4.7-p9, 2.4.6-p14, and 2.4.5-p16; those lines use Valkey. Earlier supported patch levels may still use Redis according to their compatibility matrix. Because patch-level requirements can change, verify the matrix during every upgrade rather than copying an old env.php.

What to configure and monitor

  • Keep default cache, page cache, and sessions in separate logical databases or services where the supported architecture calls for it.
  • Monitor memory use, evictions, latency, connection counts, blocked clients, persistence behavior, and failover—not merely whether the process is running.
  • Use L1/L2 caching to reduce remote round trips on multi-node deployments, following the implementation appropriate to the Magento release.
  • Use cache preloading only for keys that are repeatedly needed and supported by the selected cache implementation.
  • Use stale-cache behavior and regeneration locks only according to current Adobe documentation and patches; test invalidation and failover on staging.
  • Avoid sharing one cache database with unrelated applications, and do not use cache:flush as routine maintenance.

Session storage has different correctness and durability requirements from general cache storage. Load-test login, cart persistence, checkout, failover, and session locking. A configuration that looks fast on catalog pages can still create cart concurrency problems.

05

PHP execution

Tune PHP and OPcache for Magento

Run only a PHP version supported by the exact Magento release. As of August 2026, the current matrix differs materially across 2.4.7, 2.4.8, and 2.4.9; 2.4.9 moves to PHP 8.5 for production while PHP 8.4 is an upgrade path. Do not infer compatibility from a neighboring Magento release.

Enable OPcache and size it so Magento’s compiled PHP files remain cached without constant restarts or eviction. Adobe publishes baseline OPcache recommendations, but the required memory and file count depend on enabled modules and generated code. Confirm with OPcache statistics after real traffic and deployments.

PHP-FPM

Size workers from measured request memory, CPU, latency, and concurrency. Too few workers queue requests; too many can exhaust RAM and force swapping.

Filesystem caches

Tune OPcache and realpath cache for the deployed codebase. Confirm invalidation during releases and distinguish CLI from FPM configuration.

Cron and CLI

Long index, consumer, import, and deployment processes may need different memory and timeout limits than storefront FPM requests.

APCu can be useful only where the application and deployment architecture explicitly use it; it is process-local and is not a replacement for a shared cache. Never raise PHP memory limits to conceal a leak or allow PHP-FPM to consume all system memory.

06

Data layer

Keep Magento’s Database From Becoming the Bottleneck

Use only the MySQL or MariaDB versions listed for your Magento release. Give InnoDB enough memory for the active data set where practical, then validate buffer-pool efficiency, disk latency, temporary-table behavior, locks, deadlocks, connection pressure, and slow statements under representative traffic.

A slow query is often the symptom, not the root cause. A third-party observer may execute it hundreds of times; an import may hold locks; a custom collection may omit a useful predicate; an indexer may be behind; or the server may be paging because PHP, OpenSearch, and the database compete for memory.

  • Enable and review the slow-query log with appropriate thresholds and retention.
  • Use EXPLAIN carefully to understand query plans before adding indexes.
  • Find oversized core and extension tables, then identify why they grow.
  • Review cron history, reports, logs, quote data, sessions, and integration tables using supported retention or cleanup processes.
  • Watch I/O wait, free memory, buffer-pool pressure, lock waits, deadlocks, and temporary tables written to disk.
  • Test catalog, pricing, inventory, search, cart, order, and admin workflows after schema or configuration changes.
Never blindly truncate Magento tables. Some apparently disposable tables participate in indexing, queues, inventory, checkout, reporting, or integrations. Back up the database, understand ownership and foreign-key relationships, and test cleanup on staging.

07

Catalog consistency

Configure Magento Indexers for Production Traffic

Adobe generally recommends Update by Schedule for production because changes are captured in changelogs and processed asynchronously by cron, reducing the work attached directly to admin saves and imports. The right cadence must still meet inventory, pricing, and merchandising requirements.

bin/magento indexer:status
bin/magento indexer:show-mode
bin/magento indexer:set-mode schedule
bin/magento indexer:reindex catalogsearch_fulltext
bin/magento indexer:reset catalogsearch_fulltext

Do not schedule unnecessary full reindexes. Monitor backlog, invalid or suspended states, changelog growth, duration, locks, and the relationship between import volume and cron capacity. A large catalog may need indexers and consumers isolated from storefront PHP workers.

Customer Grid changed in 2.4.8

Before Magento 2.4.8, the Customer Grid indexer uses Update on Save. In 2.4.8 and later it supports both modes and defaults to Update by Schedule. Apply advice that matches the installed release.

08

Background workload

Fix Slow or Overloaded Magento Cron Jobs

Magento relies on cron for scheduled indexers, emails, rules, cleanup, feeds, inventory work, and extension tasks. Queue consumers handle asynchronous work such as exports and integration messages. If cron stops, overlaps, or lacks capacity, indexer lag and queue backlogs eventually surface as stale storefront data, slow admin work, or competition with customer requests.

Signs Magento Cron Is Hurting Performance

  • cron_schedule fills with missed, error, or long-running entries.
  • Multiple copies of the same job overlap or remain stuck.
  • CPU, database load, or I/O spikes at a predictable schedule.
  • Product changes remain absent because scheduled indexers are behind.
  • Queue depth grows while consumers repeatedly restart, fail, or lack workers.
  • Feeds, imports, reports, backups, or extension jobs run during peak traffic.

Magento’s crontab runner is commonly invoked every minute, but each job’s schedule and concurrency need review. Separate heavy workloads where the architecture allows it, set consumer limits intentionally, and prevent duplicate process supervisors. Never kill jobs without determining whether they hold locks or are midway through a business-critical operation.

09

Catalog search

Optimize Magento Search Without Overloading the Store

OpenSearch compatibility is release-specific. Magento 2.4.8 is aligned with OpenSearch 3 and no longer supports Elasticsearch, while 2.4.9 supports current OpenSearch 3.x and retains documented compatibility where listed. Verify the exact system-requirements row before an engine upgrade.

Monitor cluster health, heap, garbage collection, disk watermarks, shard count, index size, request latency, rejected operations, and Magento connection errors. Layered-navigation modules, synonyms, custom analyzers, recommendation tools, and poorly bounded queries can increase search cost. Repeated unnecessary catalog reindexing can overload both the database and OpenSearch.

Give OpenSearch its own memory plan. Do not let its heap, PHP-FPM workers, cache services, and database collectively exceed available RAM. For larger stores, service isolation often improves predictability more than another round of micro-tuning.

10

Application audit

Audit Magento Extensions Before Buying More Server Power

A module can add plugins around frequently executed methods, global observers, repeated database queries, remote API calls, layout blocks, JavaScript, cron jobs, indexers, search queries, or broad cache invalidation. Each addition may look small in isolation but become expensive across every product or category request.

Server problem?

Sustained CPU saturation, memory pressure, swapping, disk latency, worker exhaustion, cache evictions, or an unhealthy search/database service under an otherwise efficient workload.

Application problem?

One route, module, SQL pattern, API call, plugin chain, totals collector, or frontend feature consumes disproportionate time or resources.

Use APM traces and repeatable staging tests to form a suspect list. Capture a baseline, disable or replace one component on staging, clear only the required caches, repeat the same test, and compare transaction breakdowns and output correctness. Also review generated interceptors, DI preferences, event observers, layout XML, frontend assets, cron groups, and integration calls.

Do not disable modules randomly in production. Magento modules can have schema, data, dependency, checkout, and order-processing consequences. More hardware may reduce symptoms, but it can also hide inefficient code while increasing operating cost.

11

Browser workload

Optimize Magento JavaScript, CSS, Images, and Fonts

Start with the network waterfall, coverage reports, bundle analysis, and main-thread activity for real templates. Magento’s RequireJS storefront can accumulate mixins, widgets, customer-data requests, and third-party scripts. Adobe documents JavaScript minification and bundling, including advanced bundling, but the best configuration depends on theme architecture, cache reuse, and measurement.

Do not automatically merge every file. Under HTTP/2 or HTTP/3, one oversized bundle can delay critical code, invalidate too much browser cache, and ship features a page never uses. Test Magento’s standard and advanced bundling against an unbundled, minified baseline.

  • Defer or remove noncritical scripts; control tag-manager containers, chat, reviews, personalization, heatmaps, and advertising tags.
  • Extract or inline genuinely critical CSS where maintainable, and load remaining styles without hiding content.
  • Remove unused theme and extension CSS instead of only minifying it.
  • Use responsive image dimensions and efficient WebP or AVIF variants where the browser and media pipeline support them.
  • Do not lazy-load the above-the-fold LCP image; make it discoverable early and consider fetchpriority="high".
  • Lazy-load below-the-fold images and reserve width/height or aspect ratio to prevent layout shifts.
  • Subset and self-host fonts where licensing allows; preload only critical files and use an appropriate font-display.

12

Real customer experience

Improve Magento Core Web Vitals

Google’s current Core Web Vitals are LCP, INP, and CLS. The “good” thresholds are LCP at or below 2.5 seconds, INP at or below 200 milliseconds, and CLS at or below 0.1, evaluated at the 75th percentile separately for mobile and desktop. These are experience targets, not ranking guarantees.

Magento storefront elements affecting LCP, INP, and CLS
Metric Common Magento cause Typical fix
LCP Slow HTML, cache miss, late hero discovery, oversized product image, blocking CSS or font Improve FPC/TTFB, prioritize the LCP resource, resize/compress media, reduce render blocking
INP Large bundles, long Knockout/RequireJS tasks, tag-manager scripts, complex mini-cart or configurable-product updates Remove unused JS, split long tasks, delay third parties, reduce DOM and handler work
CLS Images without dimensions, banners inserted late, font swaps, dynamic review/payment/chat UI Reserve space, set dimensions, stabilize font metrics, avoid injecting content above existing content

Lab data is reproducible and useful for debugging, but field data captures actual devices, networks, cache states, geography, and user interaction. PageSpeed Insights may show both. Use lab tools to isolate a cause and field data to confirm whether the fix improves real customer experience.

13

Delivery layer

Use a CDN Without Hiding Origin Performance Problems

A CDN can reduce geographic latency and efficiently deliver images, CSS, JavaScript, and fonts. With correct cache headers, compression, and invalidation, it reduces origin bandwidth and makes repeat delivery more consistent. Edge page caching can further improve public HTML where the architecture safely supports it.

A CDN cannot repair a slow uncached PHP request, a locked database query, a delayed shipping API, or an overloaded indexer. Test origin TTFB separately. Use long-lived cache headers with versioned static assets, verify Brotli or Gzip as appropriate, and make purge behavior part of the deployment process.

14

Capacity

Give Magento Enough CPU, RAM, and Fast Storage

Magento sizing depends on concurrent traffic, catalog and attribute size, store views, customer groups, extensions, cache-hit rate, index workload, imports, APIs, and deployment topology. There is no responsible universal RAM number.

Fast CPU cores reduce PHP request and indexing time. Adequate RAM keeps PHP workers, OPcache, the database, Valkey, and OpenSearch from swapping. NVMe or good SSD storage reduces database, search, deployment, and log latency. Monitor CPU steal, load, memory pressure, swap activity, disk latency, network round trips, process queues, and service-specific saturation.

Scale the constrained resource only after proving the constraint. A larger server cannot make a synchronous carrier API return sooner or remove a quadratic loop from a custom plugin.

15

Revenue-critical flow

Optimize Magento Cart and Checkout Separately

Cart and checkout are personalized, write-heavy, and less cacheable than CMS, category, or product pages. They calculate totals, promotions, tax, shipping, inventory, payment availability, and customer data. Optimization therefore depends more on efficient application code, database work, session behavior, and external-service latency than on public full-page caching.

  • Trace every cart, shipping-information, payment-information, and totals request in APM.
  • Measure carrier, tax, fraud, address-validation, ERP, and payment calls independently, including timeouts and retries.
  • Profile totals collectors and cart-price rules with realistic carts and customer groups.
  • Audit third-party checkout modules and customer-section/private-content reloads.
  • Check quote locks, session locking, database writes, duplicate AJAX calls, and frontend re-rendering.
  • Test guest, customer, mobile, coupon, multi-address, virtual, and failure/retry paths before release.

A fast product page does not compensate for a checkout that pauses after each field or fails intermittently. Track checkout performance as its own service-level objective.

16

Observability

Monitor Magento Performance Continuously

Performance changes with releases, catalog growth, campaigns, integrations, search indexes, cache state, and third-party services. Use APM such as New Relic to track web transactions, database calls, external services, errors, and deployment markers. Combine it with infrastructure and browser monitoring.

Application

Slow transactions, throughput, PHP errors, external calls, memory, deployments, and 5xx rates.

Services

Database locks and queries, Valkey latency/evictions, OpenSearch health, cron failures, and queue backlog.

Customer

Field Core Web Vitals, frontend errors, conversion steps, checkout latency, and geography/device segments.

Define alert thresholds from normal behavior, not arbitrary defaults. Record a baseline before each release and compare equivalent periods after deployment.

17

Prioritize by evidence

Magento Performance Optimization Priority List

Optimization Likely impact Difficulty Priority
Correct production mode and enabled caches Very High if misconfigured Low–Medium Immediate
Varnish/Fastly full-page caching Very High for public pages Medium Very High
Supported Valkey/Redis and L2 architecture High Medium–High Very High
PHP-FPM and OPcache High Medium High
Indexer and cron health High when backlogged Medium High
Extension/code profiling Store Dependent, often High High High
Database analysis Store Dependent High High after evidence
Checkout profiling High for conversion flow High Very High
Frontend JavaScript and CSS High for INP/LCP Medium–High High
Image optimization Medium–High Low–Medium High quick win
CDN and compression Medium–High Medium After origin review
Server scaling High only when capacity-bound Medium–High Evidence dependent

Impact varies by store. A broken cache configuration can dominate one site, while a carrier API, custom price calculation, or third-party JavaScript dominates another.

18

Do this first

A Practical Magento Optimization Checklist

  1. Establish a baseline. Record field data, lab tests, TTFB, APM transactions, errors, and server/service metrics.
  2. Segment the problem. Compare cache hit/miss, page types, guest/customer, frontend/backend, device, and geography.
  3. Confirm production mode. Verify deployed static assets, compiled DI, enabled cache types, and a repeatable deployment.
  4. Verify full-page cache. Confirm Varnish or Fastly placement, safe caching, invalidation, and HIT/MISS behavior.
  5. Verify the cache/session backend. Match Valkey or Redis and the L2 implementation to the exact Magento patch level.
  6. Check PHP. Confirm supported version, OPcache health, FPM saturation, memory, and swapping.
  7. Check indexers. Review mode, state, backlog, duration, changelogs, and unnecessary full reindexes.
  8. Check cron and queues. Find missed, overlapping, stuck, or peak-time heavy jobs and consumer backlogs.
  9. Profile slow requests. Use APM to identify PHP methods, plugins, SQL, and external calls.
  10. Inspect the database and OpenSearch. Review health, capacity, slow operations, locks, heap, and disk pressure.
  11. Audit extensions on staging. Isolate suspected modules using repeatable tests without endangering production.
  12. Analyze the frontend waterfall. Reduce blocking CSS, unused JavaScript, third parties, fonts, and oversized media.
  13. Profile checkout separately. Measure totals, shipping, tax, payments, sessions, private content, and AJAX.
  14. Retest and monitor. Compare equivalent measurements, deploy safely, watch production, and keep rollback capability.

19

Avoid expensive detours

Magento Performance Mistakes to Avoid

  • Optimizing without a baseline or testing only the home page.
  • Running unsupported PHP, database, cache, search, or message-broker versions.
  • Running developer/default mode or disabled caches in production.
  • Flushing cache constantly instead of fixing invalidation or deployment problems.
  • Running full reindexes unnecessarily or ignoring a scheduled-indexer backlog.
  • Enabling every merge, bundle, minify, or “speed” option without before/after evidence.
  • Installing a performance extension before identifying the bottleneck.
  • Assuming a CDN fixes origin PHP, database, or API latency.
  • Ignoring extension plugins, observers, cron jobs, frontend assets, and cache invalidation.
  • Running imports, backups, reports, or feeds during peak traffic without capacity planning.
  • Copying PHP, Valkey/Redis, MySQL/MariaDB, or OpenSearch settings from an unrelated server.
  • Optimizing only a PageSpeed score while ignoring search, cart, checkout, errors, and real-user behavior.

Magento performance engineering

Need Help Finding What Is Slowing Down Your Magento Store?

A proper Magento performance review can combine application profiling, extension analysis, server and cache configuration, database and OpenSearch review, indexing, cron, checkout, frontend rendering, Core Web Vitals, and deployment practices. The goal is a prioritized diagnosis—not a generic list of settings.

Explore NSPlug’s e-commerce development and performance services, review our Magento 2 extensions, or tell us about the slow pages and operational symptoms you are seeing.

Final perspective

Fix the Bottleneck, Then Protect the Improvement

The fastest route to a better Magento store is not to enable every optimization at once. Measure the customer journey, identify the layer consuming time, correct the supported architecture for your release, and verify the change with the same test. Start with cacheability and platform health, then profile application code, services, checkout, and the browser.

Keep performance visible after launch. Catalog growth, new extensions, marketing tags, integrations, and peak traffic can quietly consume the headroom gained today.

Frequently asked questions

Magento Performance Optimization FAQ

Magento 2 is usually slow because one or more layers are unhealthy: full-page cache misses, unsupported or poorly configured cache services, slow PHP or database work, inefficient extensions, delayed external APIs, indexer or cron backlog, overloaded infrastructure, or excessive frontend JavaScript and media. Measure representative URLs and separate cached, uncached, frontend, backend, and checkout delays before choosing a fix.

Start by confirming production mode and enabled caches, then verify Varnish or Fastly HIT behavior and a cache/session backend supported by your exact release. Check PHP-FPM, OPcache, indexers, cron, queues, database, and OpenSearch. Use APM to find slow code and APIs, audit extensions on staging, and optimize frontend JavaScript, CSS, fonts, and images. Retest the same customer journeys after each change.

For on-premises Magento production sites, Adobe recommends Varnish as the full-page cache. It can serve eligible public pages without running the full Magento/PHP application on every request. Adobe Commerce Cloud uses Fastly instead. Varnish must be placed and configured correctly, and cart, checkout, customer, price, inventory, and private content must retain correct cache behavior.

It depends on the Magento release and patch level. Adobe’s 2026 matrix moves Magento 2.4.9 and newer patch lines beyond 2.4.8-p4 and 2.4.7-p9 to Valkey; Redis remains relevant to earlier supported releases. Magento 2.4.9 also introduces the Symfony L2 implementation. Check the current system requirements for the exact installed version before changing cache or session services.

The best configuration uses full-page caching through Varnish or Fastly, enabled Magento cache types, and a supported remote cache/session service sized and monitored for the store. Multi-node systems benefit from an appropriate local/remote L1/L2 design. Magento 2.4.9 uses different Symfony L2 guidance from legacy releases. Validate hit rate, latency, evictions, invalidation, sessions, failover, and checkout correctness.

Update by Schedule is generally preferred for production because changelogs and cron move indexing work away from admin saves and imports. The schedule must run reliably and keep pace with change volume. Customer Grid is version-specific: before 2.4.8 it uses Update on Save; in 2.4.8 and later it supports both modes and defaults to Update by Schedule.

Yes, although quality matters more than the raw number. A single extension can add expensive plugins, observers, SQL, API calls, layout blocks, cron jobs, indexers, search operations, JavaScript, or broad cache invalidation. Use APM and repeatable staging tests to isolate the actual module or interaction. Do not disable extensions randomly on production.

Improve LCP by reducing TTFB, prioritizing the hero resource, and removing render blockers. Improve INP by reducing unused JavaScript, long tasks, frontend re-rendering, and third-party tags. Improve CLS by reserving image and dynamic-content space and stabilizing fonts. Use lab tools to diagnose and 75th-percentile field data to confirm real-user improvement.

A CDN usually improves delivery of images, CSS, JavaScript, and fonts, particularly for customers far from the origin. It can also support safe edge caching. It does not fix slow uncached PHP, database queries, indexers, checkout calculations, or external APIs. Measure origin performance separately and configure versioned URLs, cache headers, compression, and purge behavior correctly.

Use APM traces to identify slow classes, plugins, database queries, external calls, and routes. Reproduce the workload on staging, capture a baseline, disable or replace one suspected module safely, and repeat the test. Review its DI plugins, observers, layout XML, cron jobs, indexers, API clients, frontend assets, and cache invalidation. Verify functional output as well as response time.

Leave a Reply

Your email address will not be published. Required fields are marked *