2011-11-11 10 views
4

symfonyに重要なWebサイトのモジュールをプレーンなPHPから移植しました。php CPUサイクルベンチマーキング

このモジュールはページヒットが多く、追加のハードウェア要件(ある場合)を判断する必要があります。私たちは、余分なメモリとCPUサイクルのWebページは、移植後に取るベンチマークにしたいです。

これらの統計情報を取得するための既存のツールや関数はPHPにはありますか?私はPHPのgetrusage関数に出くわしましたが、信頼できるとは思われません。

+0

賢明ではありませんが、「Symfony」と綴られています。 –

答えて

0

symfonyとその他のほとんどのフレームワークでは、静的な有用性が見いだされた組み込みのベンチマークシステムが提供されています。

また、この情報が役立つかどうかを確認してください。 http://www.markround.com/archives/30-LigHTTPd-and-Apache-Symfony-benchmarks.html

+0

シンフォニーの組み込みベンチマークシステムを参照してください。 Apacheのベンチマークでは、私もそれをやろうとしています。私はおそらくjmeterまたは包囲攻撃を使用して、Webサイト上の別のページにヒットします。 abは1つしかサポートしていません。 – Shivam

0

は、代わりにこの方法をベンチマークの、あなたは多分たとえばApache Benchmarking Toolため、毎秒同等の要求で、生産1に相当し、開発サーバ上のストレステストを行うことができます。 (そして、オペコードキャッシュをインストールすることを忘れないでください)。

+0

はい、私たちはそれを行いますが、これでCPU時間とメモリパターンが得られれば、Webサイト上に他の多くのモジュールがあり、シミュレートされているWebサイトのトラフィックも同様にシミュレートするので、キャパシティプランニングを行うために、モジュールタイプの統計ごとに負荷を消費したいと考えています。 – Shivam

+0

Ok :)そうですね、symfonyのプロファイリングモジュールを参照してください。 – Nanocom

0

enter image description here

symfonyのは、PHPプロジェクトをプロファイリングするための最良のフレームワークの1つです。これは、いくつかの素晴らしいツールが組み込まれています。

スライドショーが http://www.slideshare.net/old_sound/debugging-and-profiling-symfony-apps

+0

ジョーンそれはかなりです。それらを通過する必要があります。私の必要性に基づいて1つを推薦しますか?ありがとう:) – Shivam

3

XDebugがcallgrindファイルや機能のトレースを作成するために使用することができ、ここでsymfonyのコンファレンス2010

であなたのオプションについての素晴らしい話がありました。

以前は、要求時間内で、関数呼び出しの数などがどこで費やされたかを説明しています。 KCacheGrindを使用して、そのデータを検査することができます。

Latterを使用すると、実際に機能パスがどのように機能しているかを確認し、関数のメモリ使用量などを関数ごとに調べることができます。

+0

: - ツールのXdebugとKcacheGrindタイプもCPUとメモリリソースを取り、一度に1つのリクエストで動作します。私たちはapacheベンチマークなどのツールを使用してベンチマークを行い、その後CPU時間と高負荷時にどのようなパターンが表示されるかをツールで確認します。 – Shivam

+0

リクエストごとに上書きするのではなく、それらのキャッシュグリンディファイルを追加できます。アクションにかなりの余分な負荷が加わりますが、相対的な使用はほとんどの場合正しいです。 – Smar

0

PHP Profiling Toolsをご覧ください。オーバーヘッドを最小限に抑えて相対的なカウントを得ることができます。また、メソッドと呼び出しのタイミングをタイミングで取得することもできます。

関連する問題