私のスクリプトは、e ショップの製品ページに必要なすべての詳細を生成します。
上部の 1 つのクエリを使用して製品の詳細を選択し、別のクエリを使用して (外部キー category_id を介して) カテゴリ名を選択し、別のクエリを使用してメーカーのブランド名を取得します....かなり単純です...
すべてが正常に動作します...
最近、単一の製品の単一のフィールドを更新して製品の統計を作成するために、コードを変更して UPDATE クエリを含めました...
products テーブルは現在 1500 行を使用しています...
私はこれらの2つの方法で製品を更新しようとしました:
古典的な方法:
$new_times_viewed = $row_product['times_viewed'] + 1;
UPDATE products SET times_viewed = 300 WHERE product_id = 125 LIMIT 1;
mysql メソッド:
UPDATE products SET times_viewed = times_viewed + 1 WHERE product_id = 125 LIMIT 1;
どちらの方法でも、この円柱状のページの読み込みが非常に遅くなります... サーバーの管理者から、CPU に関してサーバーに大きな負荷がかかっているとの連絡がありました。別の本番サーバーにスクリプトをロードしようとしましたが、うまく動作し、地獄のように高速です...両方のサーバーはMyISAMエンジンを介して動作します...
除外するとパフォーマンスの問題が解決するため、問題を引き起こすのは間違いなくこの更新です。
私のロジックに何か問題がありますか、それともサーバー構成の問題ですか? それは私を怒らせています...
前もって感謝します!