Lock in $30 Savings on PRO—Offer Ends Soon! ⏳
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
8.5k
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
「もしもデータ基盤開発で『強くてニューゲーム』ができたなら今の僕はどんなデータ基盤を作っただろう」
aeonpeople
0
240
It's Automatic〜7回目のベルでアラートを取った君へ〜/ignite-aks-automate
aeonpeople
0
400
"AKSのアップグレードに失敗しない漢"への道/failure-of-upgrade-is-not-an-option
aeonpeople
0
1.1k
Terraformのdrift(差分)を全部AIに任せた!...かった
aeonpeople
0
100
Azureコストと向き合った、4年半のリアル / Four and a half years of dealing with Azure costs
aeonpeople
1
400
Snowflakeで実現したスピード感あるデータ基盤開発 / rapid data infrastructure development achieved with Snowflake
aeonpeople
1
140
プラットフォーム転換期におけるGitHub Copilot活用〜Coding agentがそれを加速するか〜 / Leveraging GitHub Copilot During Platform Transition Periods
aeonpeople
2
610
JTCにおける内製×スクラム開発への挑戦〜内製化率95%達成の舞台裏/JTC's challenge of in-house development with Scrum
aeonpeople
0
650
2025年にHCP Vaultを学び直して見えた景色 / Lessons and New Perspectives from Relearning HCP Vault in 2025
aeonpeople
0
440
Other Decks in Technology
See All in Technology
日本の AI 開発と世界の潮流 / GenAI Development in Japan
hariby
1
390
AI時代のワークフロー設計〜Durable Functions / Step Functions / Strands Agents を添えて〜
yakumo
3
2.1k
普段使ってるClaude Skillsの紹介(by Notebooklm)
zerebom
8
2.1k
Next.js 16の新機能 Cache Components について
sutetotanuki
0
180
Snowflake導入から1年、LayerXのデータ活用の現在 / One Year into Snowflake: How LayerX Uses Data Today
civitaspo
0
2.4k
NIKKEI Tech Talk #41: セキュア・バイ・デザインからクラウド管理を考える
sekido
PRO
0
210
AI with TiDD
shiraji
1
270
AI との良い付き合い方を僕らは誰も知らない
asei
0
250
「図面」から「法則」へ 〜メタ視点で読み解く現代のソフトウェアアーキテクチャ〜
scova0731
0
490
フィッシュボウルのやり方 / How to do a fishbowl
pauli
2
380
ソフトウェアエンジニアとAIエンジニアの役割分担についてのある事例
kworkdev
PRO
0
230
TED_modeki_共創ラボ_20251203.pdf
iotcomjpadmin
0
150
Featured
See All Featured
エンジニアに許された特別な時間の終わり
watany
105
220k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.3k
RailsConf 2023
tenderlove
30
1.3k
Getting science done with accelerated Python computing platforms
jacobtomlinson
0
76
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.5k
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
Into the Great Unknown - MozCon
thekraken
40
2.2k
The B2B funnel & how to create a winning content strategy
katarinadahlin
PRO
0
190
A Tale of Four Properties
chriscoyier
162
23k
VelocityConf: Rendering Performance Case Studies
addyosmani
333
24k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
31
3k
SERP Conf. Vienna - Web Accessibility: Optimizing for Inclusivity and SEO
sarafernandez
1
1.3k
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
まとめ
・完全停止を防ぎたい。動く機能を動かせるようにして、動かない 機能はきちんとエラーを表示してあげることがとても重要! ・これからも便利な機能を発表していくので、乞うご期待! まとめ
告知
募集しています!