Web が遅いと思われる場合は、サードパーティの広告および分析スクリプトが原因です。
多くのインターネットユーザーがすでにその結論に達しているが、テキサス州ダラスに拠点を置くエリス・ベンチャーズの創設者で元グーグルのエンジニアであるパトリック・ハルス氏は、より効率的なコーディングを促すことを期待して、サードパーティのスクリプトの影響を明らかにするデータを集めた。
Hulce 氏は、上位 100 万の Web サイトに存在するサードパーティ スクリプトのリストを作成し、最も一般的な 100 個の JavaScript がスクリプト実行時間の約 59 パーセントを占めていることを発見しました。
「サードパーティのスクリプト実行は今日のウェブの大部分を占めており、十分な情報に基づいた選択を行うことが重要だ」と彼はデータを提示したGitHubの投稿で述べている。
ハルス氏はGoogle在籍中、ブラウザパフォーマンスプロファイリング用の開発者ツールであるLighthouseの開発に携わっていました。これはChrome、コマンドラインアプリ、またはNode.jsモジュールとして利用可能です。
レイテンシー
サードパーティのスクリプトは、ウェブページ全体の読み込み時間を計算する際に考慮される要素の一つに過ぎません。ネットワークの遅延、帯域幅、ファイルサイズ、デバイスの処理能力など、すべてが影響します。しかし、JavaScriptコードの実行時間も大きな影響を与える可能性があります。
レジスター紙へのメールで、ハルス氏はユーザーが感じる遅延には様々な種類があると説明した。「何も表示されない、あるいは明らかに読み込みが遅いといった視覚的な遅延は、依然としてネットワークの遅延と大量のリソースのペイロードが主な原因です」とハルス氏は述べた。「大きなスクリプトファイルも原因の一つですが、実行時間が必ずしも最大の原因とは限りません。」
同時に、ユーザーがアイコンをクリックしてもすぐに何も起こらないといった、インタラクティブ性に影響を与える遅延は、ほぼ例外なくJavaScriptの実行に起因すると彼は述べた。「JavaScriptの実行時間を短縮することは、この種の遅延に非常に大きな効果をもたらします」と彼は述べた。
HTTP Archiveプロジェクトとモバイル版Lighthouseの連携により収集されたHulce氏のデータによると、Googleのスクリプトは他のどのサービスよりも多くの遅延を引き起こしていることが明らかになりました。最も遅延を引き起こしているのは、Google/DoubleClick Ads(平均330ミリ秒)とGoogle Tag Manager(平均386ミリ秒)です。
名前を公表して恥をかかせる
これら2つのスクリプトは、ウェブサイトのコードで最も多く見られるため、最も大きな影響を与えています。前者は月2回のデータ収集期間中に合計466,442秒(約5.4日)の実行時間を消費し、後者は421,590秒(約4.9日)の実行時間を消費しました。Facebookのコードは全体で4位で、145,169秒(約1.7日)を占めています。
平均遅延が最も長いのは、WordPress の広告システムである WordAds で、読み込みごとに通常 2,543 ミリ秒かかります。33 Across 広告スクリプト (1,170 ミリ秒) と Wix プラットフォーム スクリプト (1,153 ミリ秒) も実行に長い時間がかかります。
ハルス氏は、この情報を公開することで、効率的なコーディングの促進に貢献したいと考えている。「ユーザーがパフォーマンスコストの低いサードパーティ製品を好むようになれば、エコシステム全体に大きな影響を与える可能性があります」とハルス氏は述べた。「サードパーティが機能だけでなくパフォーマンスでも競争してくれるようになると嬉しいですね。」
すでにサードパーティのスクリプトが問題の原因であると認識している多くのウェブユーザーは、ブラウザにコンテンツや広告をブロックする拡張機能をインストールしたり、ネットワーク レベルでサードパーティのリクエストをブロックしたりすることで、オプトアウトしています。
ハルス氏はこのアプローチを支持していない。「広告ブロッカーはウェブのスクリプト問題に対する長期的な解決策にはならないと思います」と彼は述べた。「サイトには収益が必要です。広告ブロッカーの脅威は、複雑な回避策や複雑な広告偽装を引き起こし、スクリプトの実行時間を長くすることで、場合によっては他のユーザーの状況を悪化させるのです。」
JavaScript、お好きですか?本当に好きですね!スクリプト言語が開発者向けプログラミング言語調査でトップに
続きを読む
広告ブロック スクリプトが遅延を引き起こす状況も考えられます (Google が Chrome 拡張機能 API の変更を提案した理由の 1 つは、こうした想定される遅延を減らすためです)。しかし、コンテンツ ブロック ソフトウェアのユーザーは、ソフトウェアによるブロックではなく、サードパーティ製のスクリプトの方が速度低下の大きな原因であると主張しています。
コンテンツブロッカー uBlock Origin のユーザー 1 人は、このソフトウェアは「広告 iframe などの量を減らすことで、人気の Web ページの読み込み速度を数倍速くし、メモリの消費量を数倍削減します」と述べています。
ブラウザメーカーのOperaは、内蔵のデスクトップ広告ブロックシステムによりウェブページの読み込み速度が最大90%向上すると主張している。
ハルス氏は、インターネットユーザーが善良な行動を認めることで、エコシステムをより良いものにしたいと考えている。「ポジティブな体験を提供するサイトに報いることこそが、未来への道だと確信しています」とハルス氏は述べた。「そこからパブリッシャーは収益を得られるはずです。」
もしそうなるなら、広告主や出版社はこれまで示したことのない自制心を発揮する必要があり、プラットフォーム所有者はただ謝罪を繰り返すのではなく、マーケティングの過剰、誤情報、悪意を取り締まることに真剣に取り組む必要があるだろう。®