Appleライブストリーム





iPhone 6とApple Watchのプレゼンテーションの最初からの生放送はうまくいきませんでした。 私を含む多くのユーザーは、表示に問題がありました。 最初は、 Akamaiクラウドサービスの問題で罪を犯しましたが、Appleサイトページの調査では、Amazon S3およびサイトの他の要素の設定方法が原因で、ほとんどの問題が発生したことが示されました。



以前のライブブロードキャストとは異なり、今回はJSONを使用してページにインタラクティブ機能を追加し、ページの下部にイベントに関連するツイートを表示することにしました。 その結果、ページは毎秒数回更新されました。 JSON( およそTransl。-著者はJSONとAjaxを混同しているようです)を使用するという決定により、サイトはキャッシュされなくなりました。 通常、Appleはこのようなブロードキャストにアカマイのキャッシュを使用しますが、今回はページをキャッシュできなかったため、ページの読み込み速度とビデオストリームの表示が大幅に低下しました。 Appleがビデオをページに挿入したため、ページブレーキがビデオブレーキにつながりました。 アカマイはこの問題についてコメントしたくありませんでしたが、ページのコードから判断すると、まだキャッシュできませんでした。 このため、iPadでプレゼンテーションページを開こうとしたときにSafariも落ちました。



これらのすべてのページ更新のため、サーバー側での要求が多すぎるため、プレーヤーは人為的にビデオ品質を下げる必要がありました。 さらに、Appleはミスを犯し、間違ったサウンドトラックでビデオをアカマイ経由で放送したため、ビデオの最初の27分間は外国語でした(記事の著者)。 Appleの誰かが間違ったビデオを作成し、さらに、オーディオと画像が同期していない状態でした。 さらに、プレゼンテーションの開始後にAppleがビデオをエンコードしたサーバーを再起動しなければならなかった瞬間を捉えたようです。このため、「ビデオをダウンロードできません」や「アクセス権がありません」などのエラーが出ました。



ページのメタデータを調べることで、AppleがAmazon S3クラウドサービスをホストしていることを判断できます。 どうやら、Appleはコンテンツを1つのバケットに配置し、負荷の増大にほとんど余裕がないため、正しく構成されていなかったようです。 Amazonはこの問題についてコメントしませんでしたが、AppleがS3ストレージを誤って設定したことは明らかであり、その結果、パフォーマンスの問題が発生しました。 すべてのリクエストは1つの場所に送信されました。



アカマイはAppleが使用する唯一のCDNです。 これは、惑星のさまざまなポイントからのtracerouteによって示されます。 また、ブロードキャストページをキャッシュする機能がないため、パフォーマンスが大幅に低下しました。 クラウドサービスの周辺サーバーにページをキャッシュできない場合、すべての要求は中央サーバーに送信されます。そのため、分散ネットワークの全体の意味が失われます。 下のグラフは、サードパーティのCedexisサービスから受け取ったもので、放送中に西ヨーロッパのアカマイサーバーの可用性が100%から96.5%に低下したことを示しています。







さまざまなデータソースから取得したデータによると、ピーク時には、ビデオプレゼンテーションの放送が6〜8 Tbpsのチャネルを占有していました。 比較のために、ワールドカップの放送は6.8 Tbpsのピークでした。 したがって、CDNで発生した異常な負荷はありませんでした。



結論:ビデオエンコーディング、ブロードキャスト、javascript、ビデオプレーヤー、S3上の唯一のサーバー、および絶え間ないページの更新により、多くのプレゼンテーション問題が発生しました。 CDNのすべてを非難することは可能ですが、どうやらこれが主な理由ではなかったようです。それは、アクションの計画と実行が不十分だったというだけでした。



All Articles