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
API基盤をAPI Gateway+LambdaからECSに移行した舞台裏
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Kuniaki Moriya
September 02, 2025
Technology
90
0
Share
API基盤をAPI Gateway+LambdaからECSに移行した舞台裏
2025.09.02
AWS Unicorn Day Tokyo LT&懇親イベント
Kuniaki Moriya
September 02, 2025
More Decks by Kuniaki Moriya
See All by Kuniaki Moriya
SREが向き合う大規模リアーキテクチャ 〜信頼性とアジリティの両立〜
zepprix
0
610
開発組織全体で意識するSLI/SLOを実装している話
zepprix
1
1.7k
20241218_今年はSLI/SLOの導入を頑張ってました!
zepprix
0
610
AWSインフラ一大刷新〜幸せな運用を目指して〜
zepprix
0
140
sre_techmeetup_moriya.pdf
zepprix
0
1.1k
Docker & ECS で構築するゲームアプリサーバーの話
zepprix
0
2.9k
Other Decks in Technology
See All in Technology
「強制アップデート」か「チームの自律」か?エンタープライズが辿り着いたプラットフォームのハイブリッド運用/cloudnative-kaigi-hybrid-platform-operations
mhrtech
0
160
freeeで運用しているAIQAについて
qatonchan
0
480
Every Conversation Counts
kawaguti
PRO
0
200
変化の激しい時代をゴキゲンに生き抜くために 〜ストレスマネジメントのススメ〜
kakehashi
PRO
5
1.2k
[Oracle TechNight#99] 生成AI時代のAI/ML入門 ~ AIとオラクルデータベースの関係 (前半)
oracle4engineer
PRO
2
240
『生成AI時代のクレデンシャルとパーミッション設計 — Claude Code を起点に』の執筆企画
takuros
3
2.3k
[Oracle TechNight#99] 生成AI時代のAI/ML入門 ~ AIとオラクルデータベースの関係 (後半)
oracle4engineer
PRO
3
250
ボトムアップ限界を越える - 20チームを束る "Drive Map" / Beyond Bottom-Up: A 'Drive Map' for 20 Teams
kaonavi
0
170
自動テストだけで リリース判断できるチームへ - 鍵はテストの量ではなくリリース判断基準の再設計にあった / Redesigning Release Criteria for Lightweight Releases
ewa
7
3.6k
ボトムアップの改善の火を灯し続けろ!〜支援現場で学んだ、消えないための3つの打ち手〜 / 20260509 Kazuki Mori
shift_evolve
PRO
2
620
マンション備え付けのネットワークとLTE回線を組み合わせた ネットワークの安定化の考案
harutiro
1
120
Agent の「自由」と「安全」〜未来に向けて今できること〜
katayan
0
350
Featured
See All Featured
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.7k
sira's awesome portfolio website redesign presentation
elsirapls
0
230
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
160
Exploring anti-patterns in Rails
aemeredith
3
350
Product Roadmaps are Hard
iamctodd
PRO
55
12k
Making the Leap to Tech Lead
cromwellryan
135
9.8k
Navigating Team Friction
lara
192
16k
The browser strikes back
jonoalderson
0
1k
Navigating Weather and Climate Data
rabernat
0
190
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
2
240
brightonSEO & MeasureFest 2025 - Christian Goodrich - Winning strategies for Black Friday CRO & PPC
cargoodrich
3
690
Embracing the Ebb and Flow
colly
88
5k
Transcript
API基盤をAPI Gateway+LambdaからECSに移行した舞台裏 2025.09.02 AWS Unicorn Day Tokyo LT&懇親イベント
シンプルフォーム株式会社 自己紹介 2 守屋邦昭(@Zepprix) 経歴 ソシャゲのサーバーエンジニア ↓ 不動産テックの SRE ↓
2024年2月にシンプルフォーム株式会社に入社 金融機関などで「法人の審査」に利用できる SaaS の開発・運用 シンプルフォーム株式会社の一人目の SRE プロダクト開発チームに所属 年内に SRE チームを立ち上げる予定!
シンプルフォーム株式会社 3 全ての法人が フェアに繋がれる世界 私達は、法人情報の非対称性を解消します。 そして、無名でも、小さくても、コネがなくても、 全ての法人がフェアに評価され、取引できる世界を実現します。 目指す世 界
シンプルフォーム株式会社 プロダクト紹介 4 収集した独自データに基づき、法人の公正な審査やリスク情報変化の検知を実現
シンプルフォーム株式会社 本日お話すること 5 API 基盤を API Gateway + Lambda から
ECS に移行した経緯 ❏ 既存システムの構成と課題 ❏ 移行の流れや工夫した点
シンプルフォーム株式会社 背景 6 ❏ 調査したい法人の情報を入力すると当社が独自に収集したリスク情報データを元にレポートを作成して 提供する Web サービス ❏ Web
UI がメインだが、顧客内の審査ワークフローに組み込み易いように API も提供 ❏ 参照する DB は同じだがソースコードを管理するリポジトリは Web UI と API で別々 SimpleCheckのシステム構成
シンプルフォーム株式会社 既存のシステム構成の課題 7 ❏ API 利用顧客が増えるにつれて機能改修が増加 ❏ Web UI で実装した機能を
API 側でも使いたいケースが増えてきたが、リポジトリが別なので二度手間 ❏ API Key が API Gateway と DB の二重管理になっており、新規発行や更新に手間がかかる Web UIと別管理であることによる運用のし辛さ
シンプルフォーム株式会社 移行後のシステム構成 8 API用のCloudFrontから既存のFargateに接続
シンプルフォーム株式会社 移行に向けたアプリケーションレイヤーの改修 9 ❏ Rails で API レスポンス生成処理を Web UI
用、外部 API 用で一つのクラスで共通化するために、 JSON レスポンス生成を担当する serializer 層を導入 ❏ JSON シリアライザーの Gem である Alba でレスポンスを整形 ❏ パラメータをクラスに渡すことで、Web UI のみに返したいキーの条件分岐など柔軟に対応できる Web UI用のAPIと処理を共通化 Serializerクラスでレスポンスを定義 controllerからSerializerを呼び出す
シンプルフォーム株式会社 移行に向けたアプリケーションレイヤーの改修 10 ❏ 移行に際して API 全体で一貫性のなかったエラーハンドリングの共通化などアプリケーションレイヤー でのリファクタリングもやりたかった ❏ 顧客目線だと特に新機能が追加されるわけではなく、リスクだけ発生する変更という印象を与える
❏ CS メンバーが「顧客目線でのメリット」も強調しつつ、顧客の理解を獲得してくれた! ❏ 技術的負債を解消することで今後の不具合や障害発生リスクを低減 ❏ 脆弱性が見つかったライブラリの更新などもやり易くなる ❏ エラーハンドリングが共通化されることで API の信頼性が上がる ❏ ハンドリングが不十分で特定条件で 5xx エラーが発生するケースもあった CSチームと連携して顧客調整
シンプルフォーム株式会社 顧客影響を最小限に抑えるための工夫 11 ❏ 顧客毎に利用している API が異なるため、移行のタイミングを API パス毎に調整する必要がある ❏
第一段階では API Gateway を残して、移行する API パスだけバックエンドを Lambda から ALB に順 次切り替えていく ❏ 異常発生時は転送先を Lambda を戻して迅速にロールバックすることが可能 ❏ 全ての切り替えが完了したら Route53 で API 用ドメインの向き先を CloudFront に変更して完了 段階的な移行
シンプルフォーム株式会社 ご清聴ありがとうございました! 最後に 12 ❏ API 基盤を Web UI の基盤に統合し、開発生産性や信頼性が向上
❏ CS と連携して適切に顧客調整をした上で、API パス毎に段階的に移行することで顧客影響を低減 ❏ シンプルフォームではビジネス・CS と開発チームの距離感が近く、日頃からの信頼関係が今回の大規模な 移行を成功させる原動力となった! ❏ 一方で、まだまだリアーキテクチャの余地が随所にあると同時に、新規プロダクトの開発も進行中 ❏ 「攻め」と「守り」のどちらも経験したいソフトウェアエンジニア、SRE、積極募集中です!