これは明らかな人もいるかもしれませんが、疑問に思っていたのは、なぜ自分のサイトの jQuery をホストするためにGoogle のサーバーに依存しなければならないのかということです。
この方法でロードが速くなったからですか?
これは明らかな人もいるかもしれませんが、疑問に思っていたのは、なぜ自分のサイトの jQuery をホストするためにGoogle のサーバーに依存しなければならないのかということです。
この方法でロードが速くなったからですか?
それの訳は:
Google の CDN から jQuery を使用したくないシナリオがいくつかあります。
Web サーバーがクライアントと同じネットワーク上でホストされているイントラネット アプリケーションを構築している場合。 Google の CDN jQuery を使用すると、ローカル ネットワーク上の Web サーバーではなく、インターネットに対して呼び出しを行うことになります。これにより、組織の帯域幅が増加し、速度が低下します。
アプリケーションをオフラインで実行したい場合。(最初の問題にかなりリンクされています)開発環境(たとえばBowerで管理)で作業する必要がある場合、インターネットに接続せずに(つまり、電車の中で)アプリケーションを動作させる必要があるかもしれません:)
カスタマイズする必要がある場合。たとえば、Gruntを使用してライブラリをビルドし、特定のモジュールのみを使用したり、AMD 名を設定したりする場合
jQuery を必要とする SSL 経由でページを提供している場合。 セキュリティ上の問題や警告を回避するために、JavaScript とページを SSL 経由で提供する必要があります。
また、 Microsoft はCDN でjQuery をホストしています。これは、Google がホストする jQuery を使用することに匹敵するもう 1 つの選択肢です。
TJ VanTollによるこの調査では、CDN から jQuery をロードするよりも、他のスクリプトと jQuery を連結する方がよいと確信しました。
その理由は、モバイル デバイスで jQuery をフェッチする際のレイテンシーです。
「2012 年の米国のモバイル ネットワークでの平均 RTT 時間は 344 ミリ秒でした。この 344 ミリ秒は、すべての HTTP リクエスト (現在、平均的な Web ページで 93 を占める) だけでなく、すべての DNS ルックアップと TCP 接続にも当てはまります...平均的な RTT は改善されていますが、現在のネットワークは物理学によって決定される理論上の限界のわずかな範囲内にあるため、わずかな追加の利益しかありません。」
彼はまた、Steve Souders のこの投稿を引用して、実際にCDN を使用してもキャッシュのメリットが得られない理由を示しています。
「CDN プロバイダー、jQuery のバージョン、およびプロトコルの使用 (http と https) の断片化により、CDN キャッシュ ヒットの可能性は驚くほど低く、外部ドメインからのダウンロードは 1 つではなく 3 つ実行される可能性があります。往復 (DNS ルックアップ、TCP 接続、および HTTP GET)。」
最大のメリットはキャッシュです。理論的には、訪問者が JavaScript ライブラリ (たとえば Google CDN から jQuery など) をロードしているサイトを訪問した場合、その訪問者が Web サイトを訪問したときに、ライブラリは既にそのユーザーのブラウザー キャッシュにあるため、再度ダウンロードする必要はありません。 . これは理論的には素晴らしいことです。
ここや他の場所で共有されている利点はすべて理論上のものです。CDN の使用と、それが期待されるパフォーマンス上の利点を提供するかどうかについての詳細な分析に出くわしました。 http://www.root777.com/appdev/does-using-google-libraries-api-cdn-give-you-performance-benefits
Google に jQuery をホストさせない主な理由は、多くの人が考えていないことですが、中国にいると jQuery がダウンロードされないからです。Google CDN によってホストされている他の多くのスクリプト、フォントなどと一緒にブロックされています。中国の視聴者にリーチする必要がある場合は、独自のサーバーでホストされているフォールバックを常に使用することをお勧めします. 中国でブロックされたGoogle API
Service Worker で CDN を使用すると、コードを更新するたびにではなく、クライアントの有効期間中に 1 回だけ CDN をダウンロードできます。