1

私はここでは初心者です。xampp1.7.1 php バージョン 5.2.9 と Magento 1.7 を使用しています。私のローカルサーバーでは、magento の速度を上げたいと思っています。そのために、Google で見つかった多くのトリックを試しています。しかし、それでもパフォーマンスは向上しません。特に保存時間(バックエンドで保存するものは何でも)には膨大な時間がかかります(5分以上...)。これが私がしたことのリストです:

  1. php.ini ファイル内:

の値を変更します

memory_limit = 8M --> memory_limit = 128M
query_cache_size=16M --> query_cache_size=64M
  1. my.ini ファイル内:

key_buffer = 512M max_allowed_pa​​cket = 64M table_cache = 512 sort_buffer_size = 4M read_buffer_size = 4M read_rnd_buffer_size = 2M myisam_sort_buffer_size = 64M tmp_table_size = 128M query_cache_size = 96M の値を設定します。

  1. magento .htaccess ファイルで重要な行のコメントを外します

これから :

<IfModule mod_deflate.c>

############################################
## enable apache served files compression
## http://developer.yahoo.com/performance/rules.html#gzip

# Insert filter on all content
###SetOutputFilter DEFLATE
# Insert filter on selected content types only
#AddOutputFilterByType DEFLATE text/html text/plain text/xml text/css text/javascript

# Netscape 4.x has some problems...
#BrowserMatch ^Mozilla/4 gzip-only-text/html

# Netscape 4.06-4.08 have some more problems
#BrowserMatch ^Mozilla/4\.0[678] no-gzip

# MSIE masquerades as Netscape, but it is fine
#BrowserMatch \bMSIE !no-gzip !gzip-only-text/html

# Don't compress images
#SetEnvIfNoCase Request_URI \.(?:gif|jpe?g|png)$ no-gzip dont-vary

# Make sure proxies don't deliver the wrong content
#Header append Vary User-Agent env=!dont-vary

</IfModule>

これに:

<IfModule mod_deflate.c>

############################################
## enable apache served files compression
## http://developer.yahoo.com/performance/rules.html#gzip

# Insert filter on all content
SetOutputFilter DEFLATE
# Insert filter on selected content types only
#AddOutputFilterByType DEFLATE text/html text/plain text/xml text/css text/javascript

# Netscape 4.x has some problems...
BrowserMatch ^Mozilla/4 gzip-only-text/html

# Netscape 4.06-4.08 have some more problems
BrowserMatch ^Mozilla/4\.0[678] no-gzip

# MSIE masquerades as Netscape, but it is fine
BrowserMatch \bMSIE !no-gzip !gzip-only-text/html

# Don't compress images
SetEnvIfNoCase Request_URI \.(?:gif|jpe?g|png)$ no-gzip dont-vary

# Make sure proxies don't deliver the wrong content
Header append Vary User-Agent env=!dont-vary

</IfModule>
  1. 「#php_flag zlib.output_compression on」から「php_flag zlib.output_compression on」のチェックを外す</p>

  2. Magento バックエンドから「キャッシュ管理」を有効にする

  3. 「Fooman_Speedster」拡張機能をインストールする

しかし、それでも速度は向上しません。提案やヒントがあれば、私と共有してください。私の英語でごめんなさい。よろしくお願いします。

4

1 に答える 1

2

Windows で localy を開発する場合、遅延の一般的な原因が 2 つあります。1 つは localhost の解決、もう 1 つは複雑な OS ACL による Windows のファイル操作の遅さです。

状況を改善するには、magento インストールのすべての localhost エントリを 127.0.0.1 に置き換える必要があります。一部の人々は、localhost を 127.0.0.1 にリダイレクトできるように Windows のホスト ファイルにエントリを作成します。これにより、ファイルの処理時間が改善されますが、設定で 127.0.0.1 が localhost に置き換わるまで、PDO 接続などの php コマンドはそれぞれ 1 秒ずつ遅延します。

Windows の遅いファイル操作を回避するには、APC や WinCache などのオペコード キャッシュ php アクセラレータが必要です。Windows で開発する場合、IIS をアクティブ化し、Microsoft Web Platform Installer を使用して、数回のクリックで PHP、MYSQL、および WinCache をインストール/構成できます。xampp を使用する場合、 http : //downloads.php.net/pierre/またはhttp://dev.freshsite.pl/php-accelerators/apc.htmlバイナリで APC をインストールするか、Visual Studio で APC を構築してから、指示に従って構成できます。インターネットから。私の経験から、最新の WinCache バージョンは非常に高速であり、Windows にとって本当に安全な選択です。IIS の悪い過去のために、Apache の代わりに IIS を使用していることを知っている開発者はほとんどいませんが、現時点ではセットアップが簡単で、より多くの要求を処理でき、Windows の Apache と比較してほとんどの部分で高速です。

これらの 2 つの変更により、1000% から 20000% の改善が見られますが、本番用に MySQL を構成しても開発環境にはまったくメリットがありません。htaccess でキャッシュと gzip を微調整しても、ローカル環境にはメリットがありません。1 つ目は、(メモリからのキャッシュ オプティマイザを使用して) ハードディスクからファイルを直接読み取るためであり、2 つ目は、開発中に絶えず変更される動的なサイトであるため、有効期限を設定し、etag を無効にします。

速度をさらに向上させるには、テンプレートを微調整する必要があります。簡単に言うと、できるすべての png を結合し、結合できないものを base64 に変換し、Lab.js などのツールを使用して読み込みを制御することで、ページの読み込みが 1.5 秒未満であることを確認できます。本番環境に移行するときは、CDN を使用してメディアを提供します。すべてがうまくいけば、すべてが非常に速くなり、1 日に何千ものアクセスがあり、多くのコンテンツを提供するまで、HW ベンチマーク、DB 最適化、およびホスティング比較を気にする必要はありません。(動的ページ/ページの一部ではなく静的キャッシュ、スクリプトにmagentoキャッシュシステムを使用して究極の速度を実現)。

PS Windows クライアント バージョンを使用して www でサイトをブロードキャストすることは、ライセンスを読んでいるときに、OS の 20 同時接続制限を変更しない限り合法です。

于 2013-01-09T02:24:08.117 に答える