出前館、急増するフードデリバリーの需要に
AWS を活用したシステムのモダン化で迅速に対応

2022

日本最大級のデリバリーサービスを運営する株式会社出前館。新型コロナウイルスによる外出自粛などで生活や消費の価値観の変化が起き、フードデリバリーは日常に溶け込んできています。さらに出前館は、2021 年よりフードデリバリーだけにとどまらず、日用品や飲料など生活するうえで欠かせない商品を迅速に届けるクイックコマース(Qコマース)と呼 ばれるサービスも推進しており、ユーザーニーズに合わせたさまざまな商品をお届けしています。ところが、約 20 年間使用してきたオンプレミスのシステムは、需要の高まりへの対応が難しく、しかも運用に大きな工数がかかっていました。そこで、同社はアマゾン ウェブ サービス(AWS)への移行を決断。豊富なメニューから手軽に注文できるアプリに加え、安定したサービスを提供するクラウドインフラストラクチャで、ビジネス機会を逃さないサービスの提供を実現するとともに、障害対応からの解放を実現しています。

AWS 導入事例  | 株式会社出前館
kr_quotemark

従来のデータベース使用時は、 CPU 使用率が 80% に達していましたが、AWS に処理をオフロードすることで 40% 程度までに下がっています。その結果、アクセスが急増するキャンペーンを安心して展開できるようになりました

吉川 英興 氏
株式会社出前館 開発サポート部 部長

高まる需要に対応するために AWS への移行を決断

スマートフォンの普及や新型コロナウイルスの影響によって、オンラインでのフードデリバリーサービス市場は急速に拡大しています。2000 年からサービスを展開している出前館は近年の需要増に伴い、メインのデータベースに高い負荷がかかる課題をかかえていました。特にごはん前や雨天のピーク時の負荷は危険水準に迫るものの、IT インフラはオンプレミス環境で構築されていたため、迅速かつ柔軟な対応が難しい状況でした。「スケーラビリティを考えると、クラウドへ移行するべきだと考えました。以前に別サービスを構築したノウハウがあったことから、AWS への移行を決定しました」と語るのは、株式会社出前館 プロダクト開発本部 岡田泰弘氏です。

出前館では 2019 年末からフロントエンドのアプリケーションがAWS に移行を開始しました。2020 年 5 月頃には、新型コロナウイルス感染症に伴う緊急事態が宣言されたことから、さらに需要が高まっていました。出前館は 2021 年の春に LINE 株式会社と資本業務提携を締結したこともあり、LINE のエンジニアが出前館に出向し、新たな体制でクラウド移行を進めることになりました。

AWS からのサポートも受けながら段階的にクラウド移行を推進

体制が整った後は、クラウド移行プログラムである AWS Migration Acceleration Program (MAP)やワークショップなど、AWS からの支援を受け、クラウドへの移行を進めていきました。さらに、2020 年 12 月にはメインとなるデータベースの負荷解消のためにマネージド型のデータベースサービスである Amazon Aurora の活用が始まりました。

オンプレミスのメインデータベースは CPU 使用率 80% に達することもありましたが、利用していたデータセンターでの拡張が困難な状況にありました。そこで、負荷の高い参照系のリクエストをオフロードするために、AWS Database Migration Service を利用して Amazon Aurora にレプリカを用意。通信の品質を確保するためにAWS Direct Connect も使用しました。岡田氏は「マネージドサービスを選んだのは運用を考えた結果です。移行後はとても安定しています」と話します。

株式会社出前館 プロダクト本部 開発サポート部 部長の吉川英興氏は「メインのデータベースへの流量を調整するために Amazon API Gateway を使いました。加えて、AWS Fargate を利用することで、ピーク時に動的なスケーリングをしてコストを最適化しています。このほか、商品検索などを素早く行うために Amazon OpenSearchService も導入しています」と工夫した内容を語ります。

Amazon Aurora に展開した PostgreSQL データベースは当初、オンプレミスのメインデータベースに準じたテーブル構成やクエリで対処していため、期待通りのパフォーマンスを発揮できませんでした。API 関連の開発を担当した株式会社出前館 プロダクト本部 山口淳史氏は「メインデータベースが求めるハードウェアスペックが非常に高かったため、単純な移行ではパフォーマンスが発揮できなかったようです。AWS の支援を得てクエリのチューニングをしました。その結果、満足いく処理性能を実現できました」と振り返ります。

フリーワードで店舗検索をするシステムの改修は、株式会社出前館 プロダクト本部の宇都宮諒氏が担当しました。「以前はMySQL の全文検索をしていましたが、パフォーマンスが出なかったため、AmazonOpenSearch Service で再構築することにしました」(宇都宮氏)

サービス停止時の迅速な原因究明や構築スピードをあげるため、AWS エンタープライズサポートも活用しています。年中無休で迅速なサポートをいただくことで、ビジネス機会の損失を防いでいます。岡田氏は「エンタープライズサポートの定例会にてスペックが過剰なものや稼働していないリソースも指摘いただけるので、AWS を管理する立場としてとても助かっております」とエンタープライズサポートを評価します。

AWS 移行によって増え続ける需要に対応売上前年比 118% を達成

AWS への移行により、増え続ける需要に対応するシステムを構築した出前館。本格的な AWS 活用からおよそ 2 年が経過した 2022 年 8 月期第 2 四半期の売上は前年比 118.4% の 227 億円を達成、加盟店は 2021 年 12月に 100,000 店を突破しています。

予測できない需要にも柔軟かつ迅速に対応し、サービスを継続し、ビジネス機会を逃さない環境を構築できました。サーバーなど各種リソースも、インフラ構築グループがその都度用意するのではなく、開発チームごとに AWS アカウントを発行し、チームごとに配備するようになりました。

山口氏は「サーバーのレスポンス向上や、宅配ドライバーの位置が把握できるなど、ユーザー体験が向上しました」と話します。宇都宮氏は「検索システムを Amazon OpenSearch Service に置き換えてチューニングした結果、検索結果から店舗のページを参照する割合が 3 倍に増えました。これまで手がつけられなかった検索の精度を改善できたことは大きな成果だと実感しています」と語ります。

クラウドへの移行を機にシステムをモダン化し、キャンペーンを積極展開するなど、進化した出前館。現在は AWS の担当チームと共有し、事前にアーキテクチャ最適化やリスク回避のための検討を行っています。今後の展望について岡田氏は最後に次のようにコメントしました。「現在はアプリケーションの改修を第一に進めています。 AWS の新しいサービスが次々と出ているため、AWS の新サービスで置き換えられるものもあると思っています。今後も新しい情報をチェックして改善に役立てていきます」

岡田 泰弘 氏

山口 淳史 氏

宇都宮 諒 氏


カスタマープロフィール:株式会社出前館

設 立: 1999 年 9 月 9 日
資本金: 161 億 1,342 万円( 2020 年 8 月末現在)
事業内容:インターネットサイト『出前館』の運営、及びそれに関わる事業

AWS 導入後の効果と今後の展開

  • サービスレベルの向上
  • 開発スピードの向上
  • 障害対応からの解放
  • ガバナンスの強化

ご利用中の主なサービス

Amazon API Gateway

フルマネージド型サービスの Amazon API Gateway を利用すれば、開発者は規模にかかわらず簡単に API の作成、公開、保守、モニタリング、保護を行えます。API は、アプリケーションがバックエンドサービスからのデータ、ビジネスロジック、機能にアクセスするための「フロントドア」として機能します。

詳細はこちら »

Amazon Aurora

Amazon Aurora は、MySQL および PostgreSQL と互換性のあるクラウド向けのリレーショナルデータベースであり、従来のエンタープライズデータベースのパフォーマンスと可用性に加え、オープンソースデータベースのシンプルさとコスト効率性も兼ね備えています。

詳細はこちら »

Amazon OpenSearch Service (Amazon Elasticsearch Service の後継サービス)

Amazon OpenSearch Service を使用すると、インタラクティブなログ分析、リアルタイムのアプリケーションモニタリング、ウェブサイト検索などを簡単に実行できます。OpenSearch は、Elasticsearch から派生したオープンソースの分散検索および分析スイートです。

詳細はこちら »

AWS DMS

AWS Database Migration Service を使用すると、データベースを短期間で安全に AWS に移行できます。移行中でもソースデータベースは完全に利用可能な状態に保たれ、データベースを利用するアプリケーションのダウンタイムを最小限に抑えられます。

詳細はこちら »