First Byte Time と CDN はどう違う?

CDN を使用してページをロードする場合の違いと、どのようなプロバイダーを使用しているのか教えてください。

CDN を使用すると読み込み時間が非常に長くなります。何か間違えているのか、あるいは知らないことがあるのでしょうか?もしかしたら、私が知らない設定をまだ行う必要があるのでしょうか?

CDN はリソースがキャッシュされるまで遅くなります。テストを行う前に、しばらくお待ちいただく可能性があります。

さて、最初のヒントは… に感謝します。
少しだけ。どれくらい?数日、数週間でしょうか?

ペイロードを https で強制すべきか、それとも http ですべきか迷っています。読み込み速度に違いがあるためです。ページが完全に読み込まれるか、元の JavaScript が読み込まれていないように見えるかは、何に依存するのでしょうか?

所要時間は、ユーザーがサイトとどのように相互作用するかによって異なります。最もダウンロードされるアセットはCDNキャッシュに読み込まれ、サーバーよりもCDNサーバーに近い場合、より高速になります。

データセンターがすぐ近くにある一方で、CDNサーバーが1000kmも離れている場合、常に遅くなります。CDNの目的は、地理的に多様なオーディエンスに対してより良いサービスを提供することであり、集中化されたアクセスを改善することではありません。

しかし、これは app.yml ファイルに CDN アドレスを追加した後の状況について話しているのでしょうか?

また、CDN アドレスにサブドメインを使用する理由は何ですか?つまり、なぜ DISCOURSE_CDN_URL: //637763234.cdn-provider.com ではなく、discourse-cdn.example.com でなければならないのでしょうか?

はい、承知しています。しかし、世界のさまざまな地域から複数のテストツールで確認しています。すると、CDN は常に遅いのです!

どのパスにおけるTTFBについてお話しされているのでしょうか?

CDNを使用する場合、静的アセット(JSファイルやJPG形式のユーザーアップロードなど)のTTFBは常に高速になります。これは、複数のPoP間のレイテンシがそれを助けるからです。

一方、動的ルートのTTFBを比較しても意味がありません。なぜなら、DISCOURSE_CDN_URLはそれらをカバーしていないからです。

具体的に何を意味するのか、詳しく説明していただけますか?

テストフォーラムの結果を示します。(ちなみに、少しだけ高速化されました)// ただし、コンテンツのない新規ドメインでのみです。

また、作成された CloudFront についても

ご覧になっているのは、通常のばらつきに過ぎません。CDN は、Discourse インスタンスのルートやその他の動的なルートにおける TTFB(ファーストバイト時間)には影響しません。CDN が提供する対象は、静的アセットのみです。

これらのリソース(静的アセット)を S3 に保持した場合、違いはありますか?

いいえ、ありません。CDN は必要に応じて S3 からそれらのアセットをキャッシュします。

それは単なる見栄えのためのアドレスであり、全く必要ありません。

CDNでページの読み込みが速くなることを期待していましたが、おそらく無視できる程度でしょう。
RAMやCPUリソースを増やす以外に、世界のさまざまな地域でページの読み込みを大幅に高速化するためのより効果的な方法はありますか?

TTFB は、アプリケーションサーバーが 200 レスポンスを送信するまでの時間です。CDN はアセットのみを提供するため、CDN を使用してこれを向上させることはできません。

ページの表示速度は向上しますが、First Byte(初バイト)の速度は向上しません。マルチメディア(画像、PDF、動画)や JavaScript の読み込みが高速化されます。これによりサイトの反応性が向上しますが、すべての動的コンテンツは中央サーバーから読み込む必要があります。

したがって、ユーザーのアバターなどは表示が速くなりますが、トピックのタイトルなどは速くなりません。

Discourse は JS と CSS の読み込み完了を待ってレンダリングをブロックするため、CDN を活用すればページをより素早くインタラクティブにできます。

このような分析を行うには、Lighthouse や WebPageTest を盲目的に実行し、結果を選んでそれに執着するだけでは不十分です。

もしこれらのツールで高いスコアを得るページを優先したいのであれば、https://jekyllrb.com/ などのツールで動作するブログを運用することをお勧めします。

では、どのように分析すればよいのでしょうか?