ネットサービス

Airbnbの開発チームが語るウェブサイトのAMP対応を諦めた理由


Airbnb」は宿泊施設を貸し出す人と借りたい人を引き合わせるウェブサービスを運営しています。Airbnbでは、多くのユーザーを引き入れるためGoogleが提唱するモバイルウェブサイトの高速化を実現するフレームワークAccelerated Mobile Pages (AMP)」の導入を検討し、開発も行ったようですが、多くの障壁があったこともあり、結局実現に至らなかったとのことです。どういう経緯があって、実現に至らなかったのか、AirbnbのGil Birman氏とBrian Ta氏がプレゼンテーションで語っています。

How Airbnb is putting AMP at the core of its digital strategy
https://medium.com/swlh/how-airbnb-is-putting-amp-at-the-core-of-its-digital-strategy-d6b9cf1fc0ad

AirbnbのBirman氏とTa氏は、顧客戦略としてウェブサイトの高速化を行うことになり、AMPでの実現を検討することにしました。AMP化するとなると、Airbnbのウェブサイトを制限の多いHTMLなどで作り直す必要が生じます。いきなりウェブサイト全体をAMP化してしまい、「やっぱりダメだ」となって、元の状態に戻すという事態になると、開発にかけたコストが全て無駄になるので、Airbnb内のどの部分をAMP化して効果の有無を調べるかを考慮する必要がありました。

そこで、Airbnbでは、「ホーム画面」、「検索結果画面」、「一覧画面」の3つに分けて、「トラフィックへの影響」「ウェブページ変更の頻度」「技術的課題」「ウェブページの所有権」の4つの観点で検討することにしました。検討の結果、AMPの適用は「検索結果ページ」に適用するのが、影響度も低く都合が良いということに落ち着きます。


AMP化プロジェクトが進むにつれて、以下4点を要検討事項となったとのことです。これら4点の問題は、「つまらない内容」と取られがちではあるのですが、今後のプロジェクトが成功し続けられるか、失敗していくかを決めるポイントでもあるのでとても重要なものであるとしています。

・どのようにすれば、AMPが全ての画面で問題なく動作するようになるか?
・ウェブサイトのデザインが日々変更されていくが、どのようにしてAMPの実装を維持していけるのか?
・他のチームがプロジェクトに参加するにはどうすれば良いか?
・誰がプロジェクトを管理し、今後も維持していくのか?

プロジェクトが進み、開発チームが検索結果画面にAMPを実装したところ、大規模なシステム障害が発生しました。それはページの読込みが500ミリ秒を超えたときに、サーバー側でタイムアウトするようになったとのこと。AMPを実装するとユーザーにとって非常に快適なウェブサイトをもたらしますが、サーバー側にはこれまで以上に大きな負荷がかかるようになったそうです。この結果、以下の画像の右側の端末のように真っ白の画面が表示されるようになりました。


この現象はAMPが有効になっているウェブページの16%で起こるようになり、早急な対策を立てる必要に迫られ、Airbnbでは、ユーザーとサーバーの間にCDNを実装することで事態の解消ができたとのこと。

しかし、別の問題も発生します。AMP実装後の検索結果画面はGoogleのドメイン配下にあることになりますが、これまでAirbnb(のドメイン)にログインしていたユーザーが検索結果画面にアクセスすると、一律ログアウトした状態となり、再度ログインが必要になってしまったとのこと。これは認証に使用していたCookieが、異なるドメインで利用できないことに由来する基本的な動きではありますが、AMP対応について、何も知らないユーザーにとって、これまで閲覧できていたAirbnbのメッセージや過去の予約状況などが表示されなくなるというデメリットが発生します。

さらに、検索結果画面に表示されるリンクをタップするとAirbnbアプリを開くディープリンクが機能しなくなったとのことです。特にAirbnbではアプリによる予約や旅行がユーザーにとって重要であると考えていたこともあり、この問題が出たことが決定的な要因となり、AMP化を諦めたそうです。


結局、AirbnbはAMPを諦め「Magic Carpet」と呼ばれるソリューションを使って、ウェブサイトの高速化を実現したとのことです。

・関連記事
「メールのAMP対応」はメールの持つ良さを消してしまう悪いアイデアだという指摘 - GIGAZINE

Googleが推進するウェブ高速化フレームワークのAMPが電子メールに対応、2018年後半にGmailにも導入へ - GIGAZINE

「ウェブはGoogleではないし、Googleだけがウェブではない」と開発者グループがGoogleのAMPによるトラフィック独占を懸念 - GIGAZINE

Windows 10の次期大型アップデートで「Progressive Web Apps(PWA)」がMicrosoftストアで提供に - GIGAZINE

ウェブサイトのPWA化がもたらす利点とは? - GIGAZINE

in ネットサービス, Posted by log1j_ty