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
Kuniaki Moriya
September 02, 2025
Technology
0
57
API基盤をAPI Gateway+LambdaからECSに移行した舞台裏
2025.09.02
AWS Unicorn Day Tokyo LT&懇親イベント
Kuniaki Moriya
September 02, 2025
Tweet
Share
More Decks by Kuniaki Moriya
See All by Kuniaki Moriya
開発組織全体で意識するSLI/SLOを実装している話
zepprix
1
1.4k
20241218_今年はSLI/SLOの導入を頑張ってました!
zepprix
0
530
AWSインフラ一大刷新〜幸せな運用を目指して〜
zepprix
0
100
sre_techmeetup_moriya.pdf
zepprix
0
1k
Docker & ECS で構築するゲームアプリサーバーの話
zepprix
0
2.7k
Other Decks in Technology
See All in Technology
Kubernetesと共にふりかえる! エンタープライズシステムのインフラ設計・テストの進め方大全
daitak
0
410
LINEスキマニ/LINEバイトにおけるバックエンド開発
lycorptech_jp
PRO
0
330
Dev Containers と Skaffold で実現する クラウドネイティブ開発環境 ローカルのみという制約に挑む / Cloud-Native Development with Dev Containers and Skaffold: Tackling the Local-Only Constraint
bitkey
PRO
0
110
プロジェクトの空気を読んで開発してくれるPerlのAIツールがほしい
kfly8
2
110
大規模プロダクトで実践するAI活用の仕組みづくり
k1tikurisu
4
1.7k
AI × クラウドで シイタケの収穫時期を判定してみた
lamaglama39
1
370
やり方は一つだけじゃない、正解だけを目指さず寄り道やその先まで自分流に楽しむ趣味プログラミングの探求 2025-11-15 YAPC::Fukuoka
sugyan
3
890
機密情報の漏洩を防げ! Webフロントエンド開発で意識すべき漏洩パターンとその対策
mizdra
PRO
10
3.7k
なぜThrottleではなくDebounceだったのか? 700並列リクエストと戦うサーバーサイド実装のすべて
yoshiori
13
4.8k
メッセージ駆動が可能にする結合の最適化
j5ik2o
2
180
未回答質問の回答一覧 / 開発をリードする品質保証 QAエンジニアと開発者の未来を考える-Findy Online Conference -
findy_eventslides
0
330
2ヶ月で新規事業のシステムを0から立ち上げるスタートアップの舞台裏
shmokmt
0
250
Featured
See All Featured
Optimizing for Happiness
mojombo
379
70k
The Power of CSS Pseudo Elements
geoffreycrofte
80
6.1k
Unsuck your backbone
ammeep
671
58k
Done Done
chrislema
186
16k
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
The Pragmatic Product Professional
lauravandoore
36
7k
Designing Experiences People Love
moore
142
24k
YesSQL, Process and Tooling at Scale
rocio
174
15k
Mobile First: as difficult as doing things right
swwweet
225
10k
Fireside Chat
paigeccino
41
3.7k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
55
3.1k
Designing for Performance
lara
610
69k
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、積極募集中です!