Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
1000万DL人を支えるiAEONアプリ:完全停止を防ぐ耐障害性の設計/iAEON app s...
Search
AEON
September 18, 2024
Technology
7
7k
1000万DL人を支えるiAEONアプリ:完全停止を防ぐ耐障害性の設計/iAEON app supporting 10 million users
2024年9月18日開催「一休×AEON 事業会社のサービスを支える基盤開発トーク」の登壇資料です。
https://ikyu.connpass.com/event/327095/
AEON
September 18, 2024
Tweet
Share
More Decks by AEON
See All by AEON
イオングループ プロダクト人材向け会社紹介資料 / AEON Product Talent Recruitment Deck
aeonpeople
0
66
DevOpsに向けたテスト方針/Testing Policy for DevOps
aeonpeople
1
79
HCP TerraformとAzure:イオンスマートテクノロジーのインフラ革新 / HCP Terraform and Azure AEON Smart Technology's Infrastructure Innovation
aeonpeople
3
1.3k
イオンスマートテクノロジーとTerraformの歩み、そしてPlaftorm Engineering/AEON Smart Technology with Terraform
aeonpeople
3
720
2025年に活用していきたいAzure関連のブラウザ拡張 / Azure-Related Browser Extensions to Leverage in 2025
aeonpeople
1
320
NerdGraph APIに入門する/Getting Started with the NerdGraph API
aeonpeople
1
410
BizDevOps加速のカギ/the key to accelerating BizDevOps
aeonpeople
0
360
イオンネクストがGitHubに振り切った理由/GitHub-Universe-Recap-tokyo-2024
aeonpeople
3
580
SREチームの越境/crossing-Boundaries-of-the-SRE Team
aeonpeople
5
1.2k
Other Decks in Technology
See All in Technology
Data-centric AI入門第6章:Data-centric AIの実践例
x_ttyszk
1
400
CZII - CryoET Object Identification 参加振り返り・解法共有
tattaka
0
360
君も受託系GISエンジニアにならないか
sudataka
2
430
一度 Expo の採用を断念したけど、 再度 Expo の導入を検討している話
ichiki1023
1
170
開発組織のための セキュアコーディング研修の始め方
flatt_security
3
2.3k
2.5Dモデルのすべて
yu4u
2
860
PL900試験から学ぶ Power Platform 基礎知識講座
kumikeyy
0
130
Tech Blogを書きやすい環境づくり
lycorptech_jp
PRO
1
240
Helm , Kustomize に代わる !? 次世代 k8s パッケージマネージャー Glasskube 入門 / glasskube-entry
parupappa2929
0
250
スタートアップ1人目QAエンジニアが QAチームを立ち上げ、“個”からチーム、 そして“組織”に成長するまで / How to set up QA team at reiwatravel
mii3king
2
1.5k
Classmethod AI Talks(CATs) #16 司会進行スライド(2025.02.12) / classmethod-ai-talks-aka-cats_moderator-slides_vol16_2025-02-12
shinyaa31
0
110
室長と気ままに学ぶマイクロソフトのビジネスアプリケーションとビジネスプロセス
ryoheig0405
0
360
Featured
See All Featured
Typedesign – Prime Four
hannesfritz
40
2.5k
Embracing the Ebb and Flow
colly
84
4.6k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
174
51k
Building an army of robots
kneath
303
45k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
32
2.1k
Build your cross-platform service in a week with App Engine
jlugia
229
18k
The MySQL Ecosystem @ GitHub 2015
samlambert
250
12k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
9
440
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
280
13k
Making the Leap to Tech Lead
cromwellryan
133
9.1k
Transcript
1000万DL人を支えるiAEONアプリ –完全停止を防ぐ耐障害性の設計– イオンスマートテクノロジー株式会社 フロントエンド開発Div 范敏
Agenda •各種紹介(自己、グループ、会社) •iAEONが直面する課題 •課題への取り組み •取り組みの成果 •まとめ
自己紹介
范敏(ファン ミン) イオンスマートテクノロジー株式会社 フロントエンド開発Div iAEON内製チーム所属 (2021/11入社) スクラムチームのコアメンバーの一員として活動中 趣味:犬、旅行 おすすめ書籍:データ指向アプリケーションデザイン
イオングループ紹介
イオングループ紹介 - 関連数字 https://www.aeon.info/company/ - "INFOGRAPHICS 数字で見るイオングループ"
会社紹介
会社紹介
iAEONアプリについて 膨大なIDと購買データを集約したアプリ「iAEON」 iAEON(アイイオン)はイオングループが提供する決済機能やポイントプログラムを1つにまとめたアプリです。 イオングループ内の多数の事業会社がもつ顧客IDを一つのアプリに統合しています。 提供開始から約3年で、iAEONは880万人以上の会員を抱え(24年8月時点)、総ダウンロード数は1000万を2024年6月に突破しました。
iAEONアプリについて 膨大なIDと購買データを集約したアプリ「iAEON」 iAEON(アイイオン)はイオングループが提供する決済機能やポイントプログラムを1つにまとめたアプリです。 イオングループ内の多数の事業会社がもつ顧客IDを一つのアプリに統合しています。 提供開始から約3年で、iAEONは880万人以上の会員を抱え(24年8月時点)、総ダウンロード数は1000万を2024年6月に突破しました。 https://prtimes.jp/main/html/rd/p/000004399.000007505.html
iAEONの開発体制
iAEONの開発体制
iAEONが直面する課題
• 提供しているサービスは多岐にわたり、連携しているバックエンドシステムも多数存在する。 • そのため、どこか1つのバックエンドシステムがダウンすると、アプリ全体がほぼ完全停止の状態 になってしまったことがある • ログインに関係のないバックエンドの障害でも、ログインができなくなるケースがあった。 • 会員サービスに問題がないにもかかわらず、会員バーコードが表示されない場合もあった。 •
さらに、エラーメッセージが表示されても内容が理解できず、ユーザーは何をすれば良いのかわ からない状況が発生している。 iAEONが直面する課題
課題への取り組み
基本的な考え方: ・重要な機能から取り組んでいく ・バックエンドが落ちたとしても動作できる機能は確実に動作させ、どうし ても動かない機能についてはユーザーに分かりやすいエラーメッセージ を提示する。 iAEONが直面する課題への取り組み
・アプリ起動に必要な情報を適宜ローカルにキャッシュし、いざネットワークが繋がらない 時でも、キャッシュで起動できるようにする iAEONが直面する課題への取り組み <重要度最高>ログインについて After Before ログインできな い アプリに入るための 情報は何が必要?
起動できた際にロー カルストレージに キャッシュする 情報が取れる場合は サーバから取得し、 キャッシュを更新。取 れない場合はキャッ シュから取る
・TOP画面が最重要。画面の描画をさらに細かく分割し、エラーが発生した部分にはエラーメッ セージを表示し、問題がない部分は正常に動作するように工夫する iAEONが直面する課題への取り組み <重要度高> Top画面について After Before エラー状況をユーザーに伝えるために お知らせ欄を設置する
・イオンラウンジも必須。起動に必要な情報をキャッシュし、ラウンジのサービスが死んでいない 限り、常に起動できるようにする iAEONが直面する課題への取り組み <重要度高> イオンラウンジについて After Before ラウンジの予 約をしたいの に、開けない
ラウンジに入るため に必要最小限の情 報は何? うまく起動できた際に ローカルストレージに キャッシュする 情報が取れる場合はサーバから最新情報を取得し、キャッ シュを更新。エラーの場合はキャッシュから取る。
・会員コード画面。会員サービスがダウンしていなければ会員コードの表示を可能にする。 iAEONが直面する課題への取り組み <重要度高> 会員コードについて After Before バーコード表示に必要なシステムがダウンして いると電波状況確認モーダルが立ち上がり バーコード画面が立ち上がらない バーコード表示不可時
は適切なメッセージを 表示する 画面の表示をいくつかの非同期 処理に分割し、サービスがダウン したパーツは非表示にする
・店舗関連のサービスがダウンした時でも、キャッシュでお気に入り店舗エリアを表示し クーポンサービスを利用できるようにする iAEONが直面する課題への取り組み <重要度中> お気に入り店舗エリアについて After Before バックエンド障害時、ホーム画面で表示で きるものはない POSとCMSのシス
テムはまだ動いて いる可能性が高い ため、せめてクーポ ンとか使えるように してあげたい 店舗の情報はそこ まで日々変わるも のではないので、 キャッシュした方が 良い バックエンドがダウン した際にキャッシュか ら店舗情報を取得し、 お気に入り店舗エリ アを表示する
取り組みの成果
取り組みの成果 • アプリ評価Ptが大幅に上昇 • 8/1時点のアプリ評価Pt ⇒ AppStore:3.6Pt、GooglePlayStore:4.1Pt ▪AppStore評価Pt ▪GooglePlayStore評価Pt 2024年8月1日時点のアプリ評価Pt
2023年12月末時点のアプ リ評価Pt •AppStore:1.9Pt •GooglePlayStore:2.9Pt
まとめ
・完全停止を防ぎたい。動く機能を動かせるようにして、動かない 機能はきちんとエラーを表示してあげることがとても重要! ・これからも便利な機能を発表していくので、乞うご期待! まとめ
告知
募集しています!