
水曜日にニューヨークで行われたアマゾンの発表イベントでは、Kindle Fireタブレットが注目を集めたが、同社はまた、Fire用の新しいブラウザ「Silk」など、潜在的に革新的なソフトウェア技術も披露した。
Silkは、複雑なウェブページの構築作業の大部分をAmazonのクラウドサービスに任せるように設定できる点で、他のブラウザとは異なります。同社によると、その結果、ユーザーは他のモバイルデバイスと比較して、ウェブページの読み込み時間を大幅に短縮できる可能性があるとのことです。
アマゾンのCEO、ジェフ・ベゾス氏は、11月15日に発売される同社の199ドルのKindle Fireタブレットを発表した後の基調講演で、Silkを紹介した。
ベゾス氏は冒頭で、「AmazonやCNNなどの現代のウェブページのほとんどは、複数の写真、アニメーション、複雑なスクリプトやマークアップコードなど、複雑な構成になっている」と指摘した。例えばCNNのホームページは、53枚の静止画像、39枚の動画、3つのFlashファイル、7つの異なるドメインからの30個のJavaScriptファイル、29個のHTMLファイル、そして7個のCSS(カスケーディング・スタイル・シート)ファイルからブラウザによって構築されている」。
「現代のウェブは複雑な場所になりました」とベゾス氏は述べた。「その結果、モバイルデバイスで現代のウェブページを高速に表示するのは困難で、課題となっています。」
Kindle Fireでのページレンダリングを高速化するために、Silkは「分割ブラウザ」アプローチを採用しているとベゾス氏は述べた。「一部はEC2で、一部はKindle Fireで動作します。」
ユーザーのウェブページへのリクエストはすべて、Amazon Elastic Compute Cloud (EC2) 内のサービスを経由して処理されます。このサービスはキャッシュサービスとして機能し、また、ウェブページのより複雑な部分をユーザーのブラウザにリダイレクトする前に前処理するためのステージング領域としても機能します。
EC2は「実質的に、無制限の計算能力と無制限の帯域幅を持っている」とベゾス氏は語った。
Amazon.comのプラットフォーム分析ディレクター、ジョン・ジェンキンス氏はイベント後のデモブースで、「Silkはスタンドアロンブラウザとして完全に機能します」と説明しました。HTML5、JavaScript、CSS、そして関連する次世代Web標準をサポートしています。また、Flashもサポートしています。Amazonは、オープンソースブラウザエンジンであるWebKitを使用して、このソフトウェアをゼロから構築しました。
ただし、ユーザーからのリクエストはすべてEC2サービスに送られ、EC2サービスがソースからページを取得し、プラットフォーム向けにコンテンツを最適化します。JavaScriptの複雑な部分は前処理され、画像は扱いやすいサイズに縮小されることがあります。CNN.comのロゴのように、人気ウェブページにはよく使われるもののあまり更新されない要素が多く、これらはEC2キャッシュから直接提供されます。
「EC2 は、ロゴが数か月間変更されていないことを認識しているので、HTML ファイルが返されるまで待たずに、そのロゴをユーザーにプッシュします」と Jenkins 氏は言います。
サイトのオリジナルコンテンツだけでなく、各ユーザー向けにパーソナライズされたコンテンツもコンテンツプロバイダーにリクエストされます。
このサービスでは、動画や画像をデバイスに送信する前に再エンコードするなどのコンテンツ圧縮技術も採用しています。また、人気のウェブサイトへの接続を常に確保することで、1対1の接続ネゴシエーションにかかる時間を短縮しています。
Amazonは、通常、サーバーからユーザーへWebページを転送するために使用されるHTTPプロトコルを廃止することで、業務の高速化も実現しました。ジェンキンス氏は、HTTPプロトコルは「現代のWebにおいて最も効率的なプロトコルとは言えません」と述べています。「コンテンツの多重化がうまくいかず、双方向のコンテンツフローを実現するのが困難です。」
代替手段として、Silk は Google SPDY プロトコルのバリアントを使用します。コンテンツプロバイダーと EC2 間では引き続き HTTP が使用されます。
ブラウザは、ハードウェアの性能とサイト自体のリッチさに基づいて、ウェブサイトのモバイル版をダウンロードするか、静的版をダウンロードするかを決定します。「ブラウザはユーザーがブラウジングしているときに効果的に学習し、ユーザーにとって最適なバージョンのコンテンツを提供します」とジェンキンス氏は述べています。これは、多くの共通要素がキャッシュされる可能性のある人気サイトで特に効果的です。
もちろん、ユーザーのウェブ閲覧がすべてAmazon経由で行われるという事実は、プライバシー擁護派の関心を高めるだろう。彼らはこの技術を侵害的だと捉えるかもしれない。しかしジェンキンス氏は、Amazonが個人のトラフィック分析を行う可能性を否定した。「EC2に個人情報は一切保存されていません」とジェンキンス氏は述べた。また、ユーザーはEC2サービスを完全に停止し、ブラウザを通常の方法で使用することもできると指摘した。
同社はまた、Facebookなどの人気サイトを閲覧しているユーザーが、誤って別のユーザーのコンテンツを表示されてしまう事態を防ぐため、多くの時間を費やしました。「他社が以前この件で行った取り組みの中には、実際にそのような結果になったものもありました。そのため、私たちは非常に慎重に検討しました。結果として、そのような事態は到底受け入れられるものではありませんでした。」
あるアナリストは、アマゾンのタブレットに対するアプローチは、混雑した市場における「興味深い展開」だと述べた。
「分割ブラウザアーキテクチャ自体は目新しいものではありません。Operaは数年前から存在していましたが、この全体的な戦略は、これまでのAndroidソフトウェアの模倣という点で興味深い展開であり、ゲームチェンジャーとなる可能性を秘めていると思います」と、IDCのアプリケーション開発ソフトウェア担当アナリスト、アル・ヒルワ氏は述べています。「Amazonは、クラウドサービスにおける圧倒的な優位性、大手オンライン小売業者としての豊富なコンテンツ、そしてKindleのビジネス戦略の成功を一挙に活用し、モバイル帯域幅の逼迫に対する最も効果的な解決策の一つとなる可能性のあるものを提供しています。」
FireはAndroidのGingerbreadビルドを採用しており、インターフェースは大幅にカスタマイズされている。ジェンキンス氏によると、AmazonはSilkを他のプラットフォームに移植する計画は当面ないとのことだ。