
주변을 둘러보았지만 이미지와 같은 것이 TTFB에 영향을 미치는지에 대한 확실한 답변을 찾을 수 없습니다. 이는 내 사이트가 프로덕션에서 로드하는 데 왜 그렇게 오래 걸리는지에 대한 최선의 추측일 것입니다. 페이지 수신이 완전히 완료된 후 전송된 것을 볼 수 있는데 40.7 mb resources
이는 많은 양이지만 초기 페이지 로드는 그 중 20.1kb에 불과하며 그 뒤에는 이미지/js/css가 포함됩니다.
네트워크 검사기에서 내보낸 .har 파일:
"pages": [
{
"startedDateTime": "2022-04-01T23:10:26.010Z",
"id": "page_1",
"title": "https://example.com/",
"pageTimings": {
"onContentLoad": 5878.881000004185,
"onLoad": 6390.734000000521
}
}
],
그 다음에는 Images/js/css 같은 것들이 따라옵니다.
내가 시도한 것:
- index.php의 콘텐츠를 간단한 echo 문으로 바꾸면
<?php echo 'foobar'; ?>
페이지를 로드하는 데 1초도 걸리지 않아 문제가 즉시 해결되었습니다. - 동일한 서버에서 호스팅되는 다른 애플리케이션과 캐시 구성이 동일하고 로드하는 데 훨씬 적은 시간이 걸리는지 확인했습니다.
composer install --optimize-autoloader --no-dev
composer dump-autoload -o
php artisan route:cache
php artisan config:cache
내 질문은: 이미지/css/js와 같은 리소스에는 자체 TTFB가 있지만 초기 페이지의 첫 번째 바이트까지의 시간을 늘릴 수 있습니까?
편집: 제가 지적하고 싶었던 또 다른 점은 리소스를 많이 사용하지 않는 페이지에서 발생하며 해당 서버가 있다는 것입니다.마이크로소프트 윈도우 서버 2016 기준그리고VMware, Inc. VMware7.1
답변1
내 Laravel 앱이 프로덕션 환경에서 3초 이상의 TTFB를 갖는 이유는 무엇입니까?
코드를 프로파일링하세요. 사용xdebug그 다음에파이프로귀하의 IDE 또는KCacheGrind/QCacheGrind코드에 부담을 주는 것이 무엇인지 확인합니다.
이미지/css/js와 같은 리소스에는 자체 TTFB가 있지만 초기 페이지의 첫 번째 바이트까지의 시간을 늘릴 수 있습니까?
자체적으로는 아니며 서버 로드 및 구성에 따라 다릅니다.
다시 한 번 먼저 코드를 프로파일링해 보세요. 생산되지 않는 것이 좋습니다.