質問
特定のページのみページの読み込みに10秒ほどかかってしまいます。
ページの内容としては、管理画面でDBのデータを20件ほど表示しているといった内容です。
情報量が少なくて恐縮ですが、原因をどのように切り分ければよいかご教授いただけると幸いです。
試したこと
- Controllerの
return view();
をコメントアウト #読み込みが早くなる - bladeファイルのhtmlをコメントアウト #同様の現象
これよりフロント側に問題があるのかと思うのですが、htmlをコメントアウトしても同じような現象が起こるのでよくわかりません
環境
Laravel7
Vue2
追記1
ローカル環境はHomesteadですが、本番環境でも同様の現象が起こります。
追記2
重いページに関してDebugbarで確認したところ、以下で時間がかかっています。
追記3
ありきたりですが、他のページとの比較とか
容量が大きい画像、動画、jsの量、cssの量とかを確認する。
PHP側で気になる処理があるのであれば、以下で計測とかいかがでしょうか。
$time_start = microtime(true);
// 計測したい処理
$time = microtime(true) - $time_start;
echo "{$time} 秒";
一旦、何もコンテンツ載せないでどうかとかも。
DNS Lookup と TTFB に時間がかかっていますね。
DNS Lookup に時間がかかっていますが、遅いURL に何回か繰り返しアクセスしても同じように遅い状況でしょうか?
TTFB は、データをサーバーが送信前の処理にかかっている時間なので、サーバー側の処理がわからないと判断は難しいです。
サーバー側の処理はどのような内容でしょうか?
>CHERRYさん
そうですね。遅いページは何度リロードしてもキャッシュを消してもおそいままです。
回答しようにもソースが開示されていないので何にも分かんないですよ
とりあえず以下チェックしてみてはどうでしょうか。
・試しにhelpのようなほぼ静的ページのreturn viewを「重くなるview」に書き換えてみて同様に重くなるかどうか、逆に現在重くなるactionのviewを明示的に他のviewに差し替えてみるとか、
※blade指定だけだとしても、やってみましょう
・viewのキャッシュを削除しても全てのActionの動作速度の差は変わらないか?(速いページと遅いページの差は変わらないか)
・該当のActionの時だけ余計な動作をする処理をrenderなどに突っ込んでないか?
回答1件
あなたの回答
tips
プレビュー