0

学校のVLEでいくつかの JS スクリプトを作成しました。

UWA ウィジェット形式を使用し、ローカルにホストされた PHP スクリプトと通信するために、プロキシと AJAX 要求を使用します。

最近、前述のローカルにホストされたサーバーを、ひどい XP ベースの WAMP サーバーから、IIS と FastCGI PHP を実行する仮想サーバー 2008 ディストリビューションに移行しました。

それ以来、または以前のことで、気がつかなかったのかもしれませんが、AJAX 呼び出しの実行に 1 秒以上かかるようになりました。

FireBug の出力

  • 関連する PHP スクリプトのクエリを PHPMyAdmin で実行しました。たとえば、関連するgetCategoriesSQLの0.00023s実行に時間がかかるため、そこに問題があるとは思いません。
  • 私はサーバーを編集しましたが、比較的小規模なネットワーク上のローカルネットワークサーバーの場合と同じように、ping一貫して返されます。<1msVLE はこの同じネットワーク上にあります。

私の質問は次のとおりです。「ボトルネック」がどこにあるかを判断するには、どのような手順を実行できますか?

4

1 に答える 1

0

まず、スクリプトが実際に実行されている時間をテストします 。PHPスクリプトをプロファイリングする最も簡単な方法

次に、サーバー上のディスクアクティビティを確認する必要があります。使用可能なRAMの量に対してあまりにも多くのFastCGIプロセスを実行している場合、スワップし、非常に遅くなります。ディスクアクティビティが非常に高い場合は、原因を見つけたことがわかります。fastcgiプロセスの最大数を減らすか、サーバーRAMの量を増やすことで、問題を解決します。

于 2012-12-03T12:30:51.970 に答える