ACSD-62577: optimalisatie van de zoekprestaties van Storefront
De markering ACSD-62577 verhelpt de kwestie met langzame prestaties van storefront onderzoeksvragen door zowel vraag als lijstindexen te optimaliseren. Deze patch is beschikbaar bij Quality Patches Tool (QPT) 1.1.56. De patch-id is ACSD-62577. De kwestie zou volgens de planning in Adobe Commerce 2.4.8 worden opgelost.
Betrokken producten en versies
het flard wordt gecreeerd voor de versie van Adobe Commerce:
Adobe Commerce (alle implementatiemethoden) 2.4.6, 2.4.7-p2
Compatibel met de versies van Adobe Commerce:
Adobe Commerce (alle implementatiemethoden) 2.4.4 - 2.4.7-p3
magento/quality-patches
-pakket bij naar de meest recente versie en controleert u de compatibiliteit op de Quality Patches Tool : zoek naar patches op de pagina. Gebruik de patch-id als een zoekwoord om de patch te zoeken.Probleem
Grote search_query
-tabellen vertragen de zoekacties in de winkeliers aanzienlijk, waardoor de responstijden aan de voorzijde toenemen als gevolg van inefficiƫnte query's en het ontbreken van geoptimaliseerde tabelindexen.
Stappen om te reproduceren:
-
Stel Adobe Commerce Developer in met de prestatietoolset
small.xml
. -
Open de SQL-opdrachtregel en verwijder de tabel
search_query
met de volgende opdrachten:code language-none SET FOREIGN_KEY_CHECKS = 0; DROP TABLE search_query; SET FOREIGN_KEY_CHECKS = 1;
-
Vul de tabel
search_query
met een groot aantal records, bijvoorbeeld 4 miljoen records. -
Trigger opnieuw indexeren en spoelcache.
code language-none bin/magento indexer:reindex bin/magento c:c bin/magento c:f
-
Logboeken voor foutopsporing in database inschakelen:
code language-none bin/magento dev:query-log:enable
-
Een term zoeken in de zoekbalk van de winkel, bijvoorbeeld
http://your_magento_instance/default/catalogsearch/result/?q=test.
-
Controleer
db.log
voor de tijd van de vraaguitvoering voor volgende SQL:code language-none SELECT COUNT(*) FROM ( SELECT DISTINCT `main_table`.`query_text` FROM `search_query` AS `main_table` WHERE (main_table.store_id IN (1)) AND (main_table.num_results > 0) ORDER BY `main_table`.`popularity` DESC LIMIT 100 ) AS `result` WHERE (result.query_text = 'test')
Verwachte resultaten :
De uitvoeringstijd van de query is geoptimaliseerd, wat resulteert in een minder significante toename van de responstijd bij het verwerken van grote search_query
-tabellen.
Ware resultaten :
De uitvoeringstijd van de query neemt aanzienlijk toe als gevolg van een inefficiƫnte afhandeling van de grote search_query
-tabel:
TIME: 10.8520 seconds
De patch toepassen
Om individuele flarden toe te passen, gebruik de volgende verbindingen afhankelijk van uw plaatsingsmethode:
- Adobe Commerce of Magento Open Source op locatie: Quality Patches Tool > Gebruikin de handleiding Quality Patches Tool .
- Adobe Commerce op wolkeninfrastructuur: Verbeteringen en Patches > Pas Patchesin Commerce op de gids van de Infrastructuur van de Wolk toe.
Gerelateerde lezing
Meer informatie over Quality Patches Tool vindt u in:
- Quality Patches Tool: Een zelfbedieningshulpmiddel voor kwaliteitspatchesin de gids van Hulpmiddelen.