ツールとkcachegrind XdebugのPHPプロファイラの出力を視覚化します。プロファイラの出力は、実質的に、対応する開始時間、実行時間、および階層を持つすべてのPHP関数呼び出しのログです。
模式図を以下の図に示されている:左側
は「フラット・プロファイル」です。時間のかかるものから時間のかかるものまで、個々の関数呼び出しをすべてリストします。 「インクルージョン」列は、呼び出し先を含む関数が消費する時間を示します。 「自己」列には、呼び出し先を除く関数が費やした時間が表示されます。 「呼び出された」および「関数」列には、関数が呼び出された回数とその関数の名前(および名前空間)がそれぞれ表示されます。
右側には、発信者と着信音を視覚化するためのさまざまなビューが用意されています。呼び出し元と呼び出し先は、左側で選択した機能に対応しています。
トップスクリーンショットでは、「着メロマップ」が開きます。各矩形は選択された関数(呼び出し先)内の関数呼び出しであり、その中の各rectaleは呼び出し先の呼び出し先です。サイズは相対 'Incl'に対応します。時間。
'All Callees'ビューには、選択した機能オーダーの呼び出し先が好みのプロパティで表示されます。
より詳細な図を以下に示す:
これは「自己」時間でソートLaravelデータベース関数の関数です。異なる関数呼び出しがどのように関連して呼び出され、どの関数が最も時間を要しているのかがはっきりと分かります:PDOStatement :: execute。これは、外部データベースに接続し、クエリを実行し、結果を待つ関数であるため、驚くことではありません。
元のスクリーンショットに戻るこれは、PHPのsession_start
関数でアプリケーションが多くの時間を費やしたことを示しています。これは99.8%の自己時間で示されます。
あなたが共有できるqCacheGrindに関する有用な文書が見つかりましたか? –
@キンバリーW残念ながら、いいえ、私は決してしませんでした。 – DelightedD0D
@キンバリーW私は1年以上待っていました、あなたは8日間で幸運に見えます、トムはちょうどそれをかなりうまくレイアウトする答えを追加しました – DelightedD0D