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
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
PagerDuty×ポストモーテムで築く障害対応文化/Building a culture of incident response with PagerDuty and postmortems
aeonpeople
3
660
【内製開発Summit 2025】イオンスマートテクノロジーの内製化組織の作り方/In-house-development-summit-AST
aeonpeople
2
2.3k
【ITmedia DX Summit 23/基調講演】イオンが構築する超大規模データ基盤と、その活用戦略
aeonpeople
2
720
イオングループ プロダクト人材向け会社紹介資料 / AEON Product Talent Recruitment Deck
aeonpeople
0
830
DevOpsに向けたテスト方針/Testing Policy for DevOps
aeonpeople
1
160
HCP TerraformとAzure:イオンスマートテクノロジーのインフラ革新 / HCP Terraform and Azure AEON Smart Technology's Infrastructure Innovation
aeonpeople
3
1.6k
イオンスマートテクノロジーとTerraformの歩み、そしてPlaftorm Engineering/AEON Smart Technology with Terraform
aeonpeople
3
960
2025年に活用していきたいAzure関連のブラウザ拡張 / Azure-Related Browser Extensions to Leverage in 2025
aeonpeople
1
410
NerdGraph APIに入門する/Getting Started with the NerdGraph API
aeonpeople
1
590
Other Decks in Technology
See All in Technology
AIコードエディタは開発を変えるか?Cursorをチームに導入して1ヶ月経った本音
ota1022
1
700
プロジェクトマネジメント実践論|現役エンジニアが語る!~チームでモノづくりをする時のコツとは?~
mixi_engineers
PRO
3
180
JNation 2025 - Quarkus for Spring Developers
edeandrea
PRO
0
110
2025advance01
minamizaki
0
130
コードの考古学 〜労務システムから発掘した成長の糧〜
kenta_smarthr
1
1.2k
人とAIとの共創を夢見た2か月 #共創AIミートアップ / Co-Creation with Keito-chan
kondoyuko
1
710
ソフトウェアテストのAI活用_ver1.10
fumisuke
0
240
DevOpsDays Taipei 2025 -- Creating Awesome Change in SmartNews!
martin_lover
0
160
会社紹介資料 / Sansan Company Profile
sansan33
PRO
6
360k
大事なのは、AIの精度だけじゃない!〜1円のズレも許されない経理領域とAI〜
jun_nemoto
11
5.2k
Swiftは最高だよの話
yuukiw00w
2
290
libsyncrpcってなに?
uhyo
0
150
Featured
See All Featured
Adopting Sorbet at Scale
ufuk
76
9.4k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
137
34k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
1
82
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
1.7k
A Modern Web Designer's Workflow
chriscoyier
693
190k
[RailsConf 2023] Rails as a piece of cake
palkan
55
5.6k
For a Future-Friendly Web
brad_frost
178
9.7k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
32
2.3k
Fontdeck: Realign not Redesign
paulrobertlloyd
84
5.5k
Site-Speed That Sticks
csswizardry
7
590
Why Our Code Smells
bkeepers
PRO
336
57k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
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
まとめ
・完全停止を防ぎたい。動く機能を動かせるようにして、動かない 機能はきちんとエラーを表示してあげることがとても重要! ・これからも便利な機能を発表していくので、乞うご期待! まとめ
告知
募集しています!