Adobe Commerce: MySQL查詢卡在「等待認證」狀態導致效能問題

MySQL中的 等待憑證 狀態是兩階段認可程式的一部分,用於Galera型叢集,以支援Adobe Commerce。 此機制可確保在提交交易時,資料庫中不會發生衝突。 雖然此狀態的短暫外觀是正常的,但持續時間的延長表示效能瓶頸。 這些延遲可能是因為長時間執行查詢、高度競爭或基礎結構問題所造成。

若要解決此問題,請分析緩慢查詢、管理快取排清、實作SWAT建議並最佳化資料庫統計資料。

說明 description

環境

  • 產品: Adobe Commerce
  • 資料庫叢集型別: Galera型MySQL

問題/症狀

因為大量MySQL查詢卡在 等待憑證 狀態而造成效能降低。 症狀包括:

  • 購物車中的產品可見度延遲。
  • 查詢執行緩慢。
  • 大型緩慢查詢記錄檔。
  • 快取排清與尖峰使用時間一致。

解決方法 resolution

若要解決問題:

  1. 請檢閱MySQL慢速查詢記錄檔,以識別長時間執行的查詢。 如果記錄檔大小增加到數百兆位元組,表示問題很嚴重。 最佳化任何有問題的查詢,以減少瓶頸並改善整體效能。 如需詳細資訊,請參閱Commerce KB檔案中的檢查慢速查詢與處理MySQL

  2. 在非尖峰時段(例如深夜或清晨)排程快取排清。 這有助於避免在高需求期間增加系統負載,並防止效能降低。 如需詳細資訊,請參閱Commerce設定指南中的管理快取檔案。

  3. 從SWAT報表實作建議。 這些可能包括新增缺少的主要金鑰到表格和儘量減少觸發器的使用,兩者都可以減少爭用並改善認證速度。 在Commerce工具檔案中進一步瞭解全網站分析工具

  4. 附註 此作業可能會暫時鎖定資料表。 在工作時間以外執行,並確保停用cron工作以避免中斷。

    執行含有資料表分析的mysqlcheck以確保資料庫統計資料是最新的:

    code language-none
    mysqlcheck -h<host_name> -u<user_name> -p -a <db_name>
    
  5. 確定表格統計資料為最新狀態。 過時的統計資料可能會導致查詢執行計畫效率低下,進而降低整個叢集的效能。

recommendation-more-help
3d58f420-19b5-47a0-a122-5c9dab55ec7f