2011-01-21 17 views
0

私はapp.promls.netでホストされているアプリケーションをテストしていますが、ローカルホストのスクリプト実行に間違いがあります は - > timer:0.12875008583069秒しかかかりません。 。実行時に はphpで作成されたプレーンテキストだけです。 とコンテンツがdinamically作成され、mysqlデータベースからcames: タイマー:0.44203495979309秒。 /タイマー:0.65762710571289秒。 /タイマー:0.48272085189819秒。 時間はサーバー上で異なります。実行に8秒かかる。私のPHPスクリプトはサーバーで非常に遅いです

誰も私にどのようにテストし、私のPHPの実行を最適化の勧告を与えることができます。 私はmysqlデータベースを最適化していました。クエリーは、説明と説明を使用して単純な検索のためにたくさんの行を返します。 しかし、私は完了していることを知って、私はいくつかの新しいPHPのオプションを探求したいと思います。 htmlへの圧縮の追加は役立ちますが、html応答を返すときにサーバーと最終ホストの間のトランスポートの時間に役立ちます。私はPHPの実行を最適化したいと思うし、mysqlにいくつかのトリックがあり、それが時間の応答を改善するのを助けるために実装できると知っています。

注:私はphpとmemcacheまたはcassandra用のhiphopを使用していると考えています。しかし、私はそれらが問題のための結果ではないと思うと思う、私は何も活動(ユーザーの行動を意味する)と私のアプリで多くの情報を持っていない。

ありがとうございました。ご意見やご提案がありましたらお寄せください。

答えて

0

このように実行に大きな違いがあると、ホストの設定(共有?専用)に関する詳細が必要になります。

mysqlはDNSテストをスキップしていますか?使用しない場合はskip-name-resolve my.cnfの設定を使用するか、PRIVILEGEクエリ/ユーザーテーブルでIPではなくDNSを使用してください。これは、MySQL間の接続でDNSタイムアウトが発生したためですおよびPHP。

0

まず、オフ、あなたのMYSQL DBに以下を実行してみてください:あなたのテーブルのすべての

  • ファイル名を指定して実行で "mytableはOPTIMIZE表"

    1. 実行して、テーブルのすべての "mytableテーブルをANALYZE"。
    2. あなたは上記の文では「mytableは」各テーブル名に置き換えてください

    を使用しているテーブルのフィールドにインデックスを追加します。

    最初の2つを実行すると違いがある場合は、インデックスを追加してください。