Upgrade to Pro — share decks privately, control downloads, hide ads and more …

イオンCTOが語るイオングループ全体を支えるクリティカルシステム解体新書/findy-arch...

AEON
November 26, 2024
5.4k

 イオンCTOが語るイオングループ全体を支えるクリティカルシステム解体新書/findy-architecture-conf-2024

2024年11月26日開催、「FindyアーキテクチャConference2024」の登壇資料です。
登壇者
イオン株式会社 CTO 山崎 賢
https://architecture-con.findy-tools.io/2024/sessions

AEON

November 26, 2024
Tweet

More Decks by AEON

Transcript

  1. 所属 • イオン株式会社 CTO • イオンスマートテクノロジー株式会社 取締役 CTO • 2023年4月より現職

    職歴(主なもの) • Yahoo! JAPAN(現 LINEヤフー株式会社 エンジニア • リクルート 開発責任者 • アソビュー CTO/トラストバンク CTO その他 • 海浜幕張在住 会社まで徒歩10分 • 7歳の男児のパパ • ラーメンショッパー(最近、山岡家に浮気気味) 山﨑 賢 @yamaken_66 自己紹介
  2. 全体像 POS 商品 ASP/B ( Aeon Smart Platform for Business

    ) ASP/D ( Aeon Smart Platform for Data ) データ活用群 会員 基盤 System of Engagement System of Record System of Management Organization / Team
  3. 全体像 POS 商品 ASP/B ( Aeon Smart Platform for Business

    ) ASP/D ( Aeon Smart Platform for Data ) データ活用群 会員 基盤 System of Engagement System of Record System of Management 1 2 3 Organization / Team 4
  4. Aeon Smart Platform for Business Azureを選択する理由 アーキテクチャ / 全体構成 提供する機能

    Re: Architecture Project iAEON Native App アーキテクチャ / 全体構成 信頼性向上プロジェクト Mini Program 支える仕組み NewRelicの活用 PagerDutyによる自動発報とNewRelicとのインテグレーション 実行する組織 組織設計に対するポリシー 向き合う組織構成
  5. Aeon Smart Platform for Business Azureを選択する理由 アーキテクチャ / 全体構成 提供する機能

    Re: Architecture Project iAEON Native App アーキテクチャ / 全体構成 信頼性向上プロジェクト Mini Program 支える仕組み NewRelicの活用 PagerDutyによる自動発報とNewRelicとのインテグレーション 実行する組織 組織設計に対するポリシー 向き合う組織構成
  6. Aeon Smart Platform for Business イオングループのクラウドインフラはAzureの活用率が圧倒的に高い Amazonは小売業界においてCompetitorであり、競合に資金を流出させることを 良しとしない文化が ある あった

    POS / レジ系のシステムはスタンドアロンをベースとして進化してきた歴史があり、 Windowsベースの実装で動いているものが現状も多い Microsoftはo365やEntra ID( Active Directory )など、企業におけるエンタープライズシーンで利用される ことが多く、エンタープライズな大企業はその信頼と関係性の延長でAzureを多用することが多い イオングループでも、上記背景からAzureの利用が非常に多い ( しかし、AWSやGCPの活用事例も徐々に広がってきている )
  7. Aeon Smart Platform for Business – Architecture / Diagram On

    azure / Japan east Java / Spring Boot 内製スクラッチ開発 OSはRHEL 検索とCache目的でESを利用 非構造的キャッシュはMongo DBへ 永続化はAzure Flexible Server ( MySQL ) クライアントに提供する全ての機能はREST APIと して提供 アプリケーションは全てAKSで稼働 pods は 550 + deploymentsは 100+ 50 + instances Service Discovery Configuration Management
  8. Aeon Smart Platform for Business – Microservice (?) product-api api-gateway

    order-api message-api marketing-api Gateway Micro-API mid-product mid-order mid-message mid-marketing Micro-Impl Service discovery product-db order-db message-db marketing-db Infrastructure Gateway機能で各種ACLや流入を制御 APIレイヤからドメイン単位でマイクロ サービス化 サービスディスカバリを中間に実装しAPI 実装の依存性を排除 Implレイヤにドメイン毎のビジネスロ ジックを実装 DBはドメイン毎に極度にシャーディング パーティショニングを実施
  9. Aeon Smart Platform for Business – Re: Architecture 2023年 データの想定以上の増加から顕著にパフォーマンス劣化が発生

    Re: Architectプロジェクトと名付けて、様々な抜本的な対策を実施 中心となるデータベースのパーティショニング/シャーディングは、複数回の深夜メンテナンスを実施して完遂
  10. Aeon Smart Platform for Business Azureを選択する理由 アーキテクチャ / 全体構成 提供する機能

    Re: Architecture Project iAEON Native App アーキテクチャ / 全体構成 信頼性向上プロジェクト Mini Program 支える仕組み NewRelicの活用 PagerDutyによる自動発報とNewRelicとのインテグレーション 実行する組織 組織設計に対するポリシー 向き合う組織構成
  11. iAEON Native App イオングループのDXの入口の立ち位置となるトータルアプリ 2024年9月で3周年 2024年6月 1000万 + ダウンロード達成 顧客向けの多くの機能を順次追加

    レジ完全連動のクーポン機能 AEON Pay キャッシュレス機能 株主向けオーナーズ機能 ネットスーパー機能 レシートレス機能 レジゴー機能
  12. iAEON Native App / Architecture Ionic ハイブリッド開発 Front部分はAngularベースのSPA ( Typescript

    / SCSS ) 一部機能はNative実装でSDK組み込み ( Swift / Kotlin ) BFF APIを束ねて高速化 App Backend Backend処理 SPAなどを実現 ASP/B クーポン機能 店舗機能 ネットスーパー機能 CMS機能 配信機能 Push配信基盤 Push notification 会員基盤 Details are confidential for security reasons.
  13. Aeon Smart Platform for Business Azureを選択する理由 アーキテクチャ / 全体構成 提供する機能

    Re: Architecture Project iAEON Native App アーキテクチャ / 全体構成 信頼性向上プロジェクト Mini Program 支える仕組み NewRelicの活用 PagerDutyによる自動発報とNewRelicとのインテグレーション 実行する組織 組織設計に対するポリシー 向き合う組織構成
  14. Aeon Smart Platform for Business Azureを選択する理由 アーキテクチャ / 全体構成 提供する機能

    Re: Architecture Project iAEON Native App アーキテクチャ / 全体構成 信頼性向上プロジェクト Mini Program 支える仕組み NewRelicの活用 PagerDutyによる自動発報とNewRelicとのインテグレーション 実行する組織 組織設計に対するポリシー 向き合う組織構成
  15. 実行する組織 戦略 組織は戦略に従う 戦術の実行は戦略に基づく 戦術は業務と専門性に分解される チームは専門性を担う(カプセル化) 戦略 組織は戦略に従う 戦術の実行は戦略に基づく 戦術は製品に分解される

    チームはプロダクトを担う(機能横断型) プロダクト組織 ビジネス実行に重きを置き、全員がプロダクトにコミットし て遂行するチーム 専門型組織 専門性で組織をカプセル化し、チームとしての成長を促す 特定分野に特化し、スペシャリスト性を磨きながら価値を 生み出していくチーム
  16. 実行する組織 COO PdM(PO) PdM(PO) PdM(PO) Project Project Project Project CTO

    Project Management Unit Frontend Development Unit Backend Development Unit Quality Assurance Unit DevSecOps Unit assignment 2024年4月に組織を大幅に改変 Product Owner制を導入し、対面する開発組織は専門性集団としてチームを再編成 2025年には内部で教育機関も保有し、イオングループにおけるエンジニア養成も担っていく予定
  17. Aeon Smart Platform for Business Azureを選択する理由 アーキテクチャ / 全体構成 提供する機能

    Re: Architecture Project iAEON Native App アーキテクチャ / 全体構成 信頼性向上プロジェクト Mini Program 支える仕組み NewRelicの活用 PagerDutyによる自動発報とNewRelicとのインテグレーション 実行する組織 組織設計に対するポリシー 向き合う組織構成
  18. 所属 • イオン株式会社 CTO • イオンスマートテクノロジー株式会社 取締役 CTO • 2023年4月より現職

    職歴(主なもの) • Yahoo! JAPAN(現 LINEヤフー株式会社 エンジニア • リクルート 開発責任者 • アソビュー CTO/トラストバンク CTO その他 • 海浜幕張在住 会社まで徒歩10分 • 7歳の男児のパパ • ラーメンショッパー(最近、山岡家に浮気気味) 山﨑 賢 @yamaken_66 自己紹介 のちほど、本日の資料を「 X 」にて公開します ぜひ、Xでフォローし資料を受け取り活用してください