回答:
まず、フロントエンドのレンダリングか、実際のスクリプトの実行が遅いかを判断します。Time To First Byteについては、ブラウザーの開発者コンソールで確認してください。これは、スクリプトがサーバーで処理するのにかかる時間です
スクリーンショットでは、非常に低い(200ミリ秒)ことがわかるため、この場合、問題はサーバーではなくフロントエンドにあります。それが終わったら、たとえば、最適化する必要があるかもしれません。
いくつかのブースターや修正ではない追加のキャッシュをたたく前に、実際の問題を隠すための単なるパッチやバンドエイドではなく、正確に遅いものを見つけてください。そのためにもいくつかのツールを使用できます。
遅いクエリ
Magentoはデータベースに非常に負荷がかかる可能性があるため、Slow Query Logをオンにすることから始めるのが良いかもしれません。有効にする方法については、この投稿をご覧ください。ログには、X秒より長い時間がかかるクエリが表示されます。
プロファイラー
プロファイラーは、コードで何が起こっているかについての洞察を得るのに役立ちます。Magentoの場合は、Aoe_Profilerから始めることをお勧めします。インストールして電源を入れるだけです。フロントエンドでは、次のような出力が表示されます。
結果を展開し、大きな赤いブロックを確認します。これらは、コードの特定の部分を処理するのにかかった実際の時間です。多くの時間またはメモリを消費しているサードパーティのモジュールを探してください。
もう1つの優れたツールはBlack fireです。Aoe_ProfilerはMagentoのモジュールであるため、基礎となるphpプロセスを表示せず、多くのモジュールを含む大規模なインストールでクラッシュする可能性があります。サーバーで黒火が発生します。ハッカソンでは、使用できる黒火でVagrantボックスを設定します。プロジェクトをそこに置いて、それを起動するだけです。使用方法の詳細については、Black fireサイトを参照してください。
最後の1つはおそらく私のお気に入りです:New Relic。
残念ながら、有料のサービスですが、プロアカウントの無料試用版を提供しています。サーバーにインストールしてプロファイルを接続した後、データが届くまで数時間待ちます。ショップthoにトラフィックがあることを確認してください。
New Relicには、推奨できるMagentoのデバッグ方法に関するブログ投稿もあります。また、New Relicの余分なMagentoデータについては、ProxiBlue New Relicモジュールを確認してください。
基本的に、これは、遅いクエリ、PHPのプロセスなど、上記のすべての機能を表示し、簡単なグラフと表で表示します。これにより、インストールの問題点に関する優れた洞察が得られます。
そしてここから 、パフォーマンスの低下の原因がわかったので、次に解決に移ります。遅いMagentoの一部またはモジュールについては、このようなフォーラムまたはGoogleを確認してください。多くの問題がよく知られており、他の問題は以前に解決しています。または、解決策が見つからない場合は、ここに質問を投稿し、調査結果を質問に含めてください
Magentoでのサイト速度の最適化は非常に大きなトピックです。これはあなたを助けることができる1つのリンクです、
http://www.gxjansen.com/blog/101-ways-to-speed-up-your-magento-e-commerce-website/
それの要点をとって、
次の2つの側面に集中する必要があります。1。フロントエンドの最適化2.バックエンドの最適化
フロントエンドの最適化
Fooman Speedsterをインストールできます-http ://www.magentocommerce.com/magento-connect/speedster-by-fooman.htmlおよびcss、js mergeを有効にします
adminでMagentoブロックキャッシュを有効にします。
Gzip圧縮を有効にする
バックエンドの最適化
フルページキャッシュ用にVarnishを構成できます
バックエンドで複雑化を有効にします。
カタログ(カテゴリおよび製品)のフラット構造を有効にします
あなたが試してみたいと思うかもしれないあなたのサイトをスピードアップするのを助けるために私が見つけたいくつかの小さなトリックがあります:
これを /template/page/html/head.phtml
<script>
function init() {
var imgDefer = document.getElementsByTagName('img');
for (var i=0; i<imgDefer.length; i++) {
if(imgDefer[i].getAttribute('data-src')) {
imgDefer[i].setAttribute('src',imgDefer[i].getAttribute('data-src'));
} } }
window.onload = init;
</script>
次に、/template/catalog/product/list.phtml
画像リンクを次のように変更します。
<img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4AQQATUqB0EhKgAAAAxJREFUCNdj+P//PwAF/gL+3MxZ5wAAAABJRU5ErkJggg==" data-src="<?php echo $this->helper('catalog/image')->init($_product, 'small_image')->resize(135); ?>" width="135" height="135" alt="<?php echo $this->stripTags($this->getImageLabel($_product, 'small_image'), null, true) ?>" /></a>
もう1つは、すべてのjavascriptおよびCSSファイルを「Pre Gzip」してから、これをに追加すること.htaccess
です。
<ifModule mod_headers.c>
##### serve pre gziped files #####
# Rules to correctly serve gzip compressed CSS and JS files.
# Requires both mod_rewrite and mod_headers to be enabled.
# Serve gzip compressed CSS files if they exist and the client accepts gzip.
RewriteCond %{HTTP:Accept-encoding} gzip
RewriteCond %{REQUEST_FILENAME}\.gz -s
RewriteRule ^(.*)\.css $1\.css\.gz [L,QSA]
# Serve gzip compressed JS files if they exist and the client accepts gzip.
RewriteCond %{HTTP:Accept-encoding} gzip
RewriteCond %{REQUEST_FILENAME}\.gz -s
RewriteRule ^(.*)\.js $1\.js\.gz [L,QSA]
# Serve correct content types, and prevent mod_deflate double gzip.
RewriteRule \.css\.gz$ - [T=text/css,E=no-gzip:1]
RewriteRule \.js\.gz$ - [T=text/javascript,E=no-gzip:1]
</IfModule>
Magentoは優れたeコマースフレームワークです。たくさんの機能があり、本当にスケーラブルな電子商取引プラットフォームを構築できます。私は最新のプロジェクトでMagentoを使用し、この速度の問題に直面しました。いくつかの研究と修正を行った後、私は本当に私のウェブサイトをスピードアップしました。
サーバーの最適化
Magentoの設定
Redisキャッシュ、APCオペコード、フルページキャッシュ拡張機能 をインストールします-PHPアクセラレータをインストールします-バックエンドとセッションキャッシュ用にRedisキャッシュをインストールします-Lesti FPCをインストールします
画像の最適化とYSlow -Webサイトのページウェイトの平均56%が画像で構成されています。製品画像を最適化すると、ダウンロード時間が短縮されるため、ページの速度が劇的に向上します。-gtmetrixまたはPingdomを使用してWebサイトをスキャンし、最適化の提案に従います。
CDNを使用する
あなたは私のウェブサイトでこれに関する詳細を読むことができます:http : //www.ranjeetvimal.com/tips-to-speed-up-magento-1-9-performance/
共有ホスティング環境にいる場合、サーバーを完全に制御することはできず、リソースは他のいくつかのWebサイトで使用されるため、適切な速度を達成することは非常に困難ですが、専用サーバー上にあり、完全な管理者アクセス権がある場合は、ニスキャッシュを試してください。
他にできること-
1.JSファイルとCSSファイルを結合する
Magento admin -> System Configuration -> Developer -> Under “Javascript Settings”, change “Merge Javascript Files” to YES.
Magento admin -> System Configuration -> Developer -> Under “CSS Settings”, change “Merge CSS Files” to YES
2. .htaccessファイルの出力圧縮を有効にし、ヘッダーを期限切れにし、ETagを無効にします/programming//a/14745165/3114253
可能であればCDNを使用する
Magentoのコンパイル機能を使用します。25%-50%のパフォーマンス向上をもたらすと報告されています:[システム]> [構成]。>ツール>コンパイル。
より小さい番号を表示 製品リストページの製品の。
フラットカタログを有効にします。
Magento管理者インターフェイスから、[システム]> [構成]> [カタログ]に移動します。[フロントエンド]で、[フラットカタログカテゴリを使用]を[はい]に変更します。必要に応じて、フロントエンドで、[フラットカタログ製品を使用]を[はい]に変更します。キャッシュをクリアします。
フロントエンドを高速化しようとする場合:
バックエンド:
magento Webサイトの速度を上げるには、まずwww.gtmetrix.comまたはGoogle Page Speed Insightsでスキャンすることをお勧めします。
その後、何ができるかを決めることができます。ほとんどの場合、次のようになります。
M1とM2を高速化するために34の方法から取られました