1. ホーム
  2. javascript

[解決済み] Microsoft CDN for jQueryかGoogle CDNか?[クローズド]

2022-04-15 04:50:33

質問

jqueryファイルやその他のjavascriptファイルへのリンクにどのCDNを使用するかは、実際に重要なのでしょうか。 一方が他方より速い可能性があるのでしょうか? どのCDNを使うかには、他にどんな要素が関係してくるのでしょうか? マイクロソフト、ヤフー、グーグルはすべてCDNを持っていることは知っています。

どのように解決するのですか?

コメントを元に更新。

ショートバージョンです。 それはあまり重要ではありませんが、それは彼らが何をホストしているかに依存するかもしれません。 彼らはすべて異なるものをホストしています。 GoogleはjQuery.Validateをホストしていません、MicrosoftはjQuery-UIをホストしていませんでした、2016年から彼らはしています!!、Microsoftは、そうでなければ経由で提供される彼らのスクリプトを提供します。 ScriptResource.axd とより簡単に統合することができます(例 ASP.Net 4.0によるScriptManagerの利用 ).

重要なお知らせです。 イントラネットのアプリケーションを構築している場合、CDNのアプローチには近づかないでください。 ホストしているのが誰であるかは関係ありません。 大変 CDNは、内部的に負荷の高いサーバーでは、ローカルの100mb/1GBイーサネット以上のパフォーマンスを提供することはできません。 もしあなたが厳密に内部的なアプリケーションのためにCDNを使用する場合は、次のようになります。 パフォーマンスを低下させる . キャッシュエクスペリエンスヘッダを正しく設定する で、イントラネットのみのシナリオではCDNを無視します。

どちらかがブロックされる可能性はほぼゼロに等しいと思われます。 そうでない契約にも携わったことがありますが、例外的なようです。 また、この回答の最初の投稿以降、これを取り巻く状況は大きく変化し、マイクロソフトのCDNは大きく進歩しました。

私が現在携わっているプロジェクトでは、両方のCDNを使用しており、私たちのソリューションに最適な形で機能しています。 これにはいくつかの要因があります。 ユーザーが 古いブラウザ は、おそらくまだドメインごとに2つの同時リクエストを行っています HTTPの仕様で推奨されているように . というまともな新しいものを実行している人にとっては問題ないでしょう。 パイプラインをサポートしています。 (しかし、別の要因から、少なくともjavascriptに関しては、この制限を打ち消すことにしました。

に使っているGoogleのCDN。

に使っているマイクロソフトのCDN。

私たちのサーバーです。

  • Combined.js?v=2.2.0.6190 (Major.Minor.Iteration.Changeset)

ビルドプロセスの一部として、すべてのカスタムJavaScriptを結合して最小化しているため、ビルドに応じてこれらのスクリプトのリリースまたはデバッグ(非最小化)バージョンを含むカスタムスクリプトマネージャーでこれを行います。 GoogleはjQueryの検証パッケージをホストしていないので、これはマイナス面になる可能性があります。 MVCは2.0リリースでこれを含む/使用しているので、すべてのニーズに対してMicrosoftのCDNに完全に依存することができます。 と、ScriptManager を介してすべて自動で行われます。 .

もう1つの問題はDNS時間です。ページの読み込み速度の点でコストがかかります。 平均すると 単純に、より多く使われているから(より長く使われているから)。 ajax.googleapis.com の方が早くDNSから返される可能性が高いです。 ajax.microsoft.com , 単にローカルDNSサーバーの方がリクエストを受けやすかったからです(これはエリアペナルティのファーストユーザーです)。 これは 非常に 些細なことなので、ミリ秒単位のパフォーマンスが非常に重要な場合のみ考慮すべきです。

(はい: この点は私が両方のCDNを使用していることと相反すると認識していますが、私たちの場合、DNSの時間は発生するjavascript/ブロックの待ち時間に比べてはるかに影が薄いです)

最後に、もしあなたがまだ見ていないなら、最高のツールの1つが ファイアバグ と、そのプラグインをいくつかご紹介します。 ページスピード YSlow . CDNを使用しているにもかかわらず、キャッシュヘッダーがないためにページが毎回画像を要求している場合、低いところにある果実を見逃していることになります。 Firebugのネットパネルでは、ページのロード時間の内訳を素早く知ることができ、ページスピード/YSlowでは、役立ついくつかの良い提案を提供してくれます。