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
Microservices - CADDi STUDDi
Search
[email protected]
February 17, 2022
Technology
1
770
Microservices - CADDi STUDDi
[email protected]
February 17, 2022
Tweet
Share
More Decks by
[email protected]
See All by
[email protected]
キャディでのApache Iceberg, Trino採用事例 -Apache Iceberg and Trino Usecase in CADDi--
caddi_eng
0
200
製造業の会計システムをDDDで開発した話
caddi_eng
3
1.6k
【CADDI VIETNAM】Company Deck for Engineers
caddi_eng
0
950
CADDi Company Deck_Global.pdf
caddi_eng
1
370
[ English ] Company Overview for Engineers
caddi_eng
0
5.4k
エンジニア向け会社紹介資料
caddi_eng
16
490k
キャディ株式会社 会社紹介・採用説明資料
caddi_eng
12
1.1M
機械学習チームのモノレポ移行
caddi_eng
0
640
BtoB SaaS を支える 認証認可基盤の設計
caddi_eng
0
1.4k
Other Decks in Technology
See All in Technology
PostgreSQL 18 cancel request key長の変更とRailsへの関連
yahonda
0
120
AIエージェント最前線! Amazon Bedrock、Amazon Q、そしてMCPを使いこなそう
minorun365
PRO
14
5.1k
Agentic Workflowという選択肢を考える
tkikuchi1002
1
500
~宇宙最速~2025年AWS Summit レポート
satodesu
1
1.8k
BigQuery Remote FunctionでLooker Studioをインタラクティブ化
cuebic9bic
3
290
Tech-Verse 2025 Keynote
lycorptech_jp
PRO
0
110
Yamla: Rustでつくるリアルタイム性を追求した機械学習基盤 / Yamla: A Rust-Based Machine Learning Platform Pursuing Real-Time Capabilities
lycorptech_jp
PRO
3
120
登壇ネタの見つけ方 / How to find talk topics
pinkumohikan
5
440
2025-06-26_Lightning_Talk_for_Lightning_Talks
_hashimo2
2
100
標準技術と独自システムで作る「つらくない」SaaS アカウント管理 / Effortless SaaS Account Management with Standard Technologies & Custom Systems
yuyatakeyama
3
1.2k
BrainPadプログラミングコンテスト記念LT会2025_社内イベント&問題解説
brainpadpr
1
160
MySQL5.6から8.4へ 戦いの記録
kyoshidaxx
1
210
Featured
See All Featured
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
252
21k
StorybookのUI Testing Handbookを読んだ
zakiyama
30
5.8k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
357
30k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
34
5.9k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
2.9k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
How to Think Like a Performance Engineer
csswizardry
24
1.7k
YesSQL, Process and Tooling at Scale
rocio
173
14k
Mobile First: as difficult as doing things right
swwweet
223
9.7k
Done Done
chrislema
184
16k
Product Roadmaps are Hard
iamctodd
PRO
54
11k
Transcript
Microservices 2022/02/15
What is Microservices • Microservicesとは? ◦ 一つのアプリケーションを小さなサービスの集合体として開発するアプローチ ◦ 1つのことに集中しそれらを組み合わせる ◦
正確な定義はない • pros ◦ Independently Deployable ◦ Technology Diversity ◦ Owned by a small team • cons ◦ Complexity ◦ Complexity ◦ Complexity
Microservices Patterns • Patterns ◦ API Gateway ◦ Choreography ◦
Microservice Chassis ◦ Service Discovery
Microservices Patterns • API Gateway ◦ 外部クライアントからのすべての APIリクエストを受け付ける ◦ Backend
serviceのAPIを合成して1つのAPIとして提供する ◦ Edge Functionの提供 ▪ 流量制御 ▪ キャッシング ◦ 課題 ▪ パフォーマンス ▪ スケーラビリティ
Microservices Patterns • Choreography ◦ 非同期メッセージングパターンを使用してビジネス操作をコーディネートする ◦ サービスの数が増加しメッセージが増えると、サービス間のワークフローは複雑になる傾向がある ◦ ピタゴラスイッチ職人の誕生
Microservices Patterns • Microservice Chassis ◦ 各サービスで共通で必要な基盤を提供する ◦ サービスの新規作成が早く・簡単に ◦
認証/認可, Observability, build設定など
Microservices Patterns • Service Discovery ◦ サービスのネットワークロケーションをクライアント( API Gateway や他のサービス)が、どうやって見
つけるか? ◦ DNSも伝統的なService Discovery ◦ k8sが内部的に行っている
Real World Microservices • API Gateway @Uber ◦ https://eng.uber.com/architecture-api-gateway/
Real World Microservices • Orchestrator @Netflix ◦ https://netflixtechblog.com/netflix-conductor-a-microservices-orchestrator-2e8d4771bf40
Real World Microservices • Microservice Chassis @Wantedly ◦ マイクロサービス共通ライブラリで “Governance
through code” を実現する
Real World Microservices • Service Discovery @Netflix ◦ https://netflixtechblog.com/netflix-shares-cloud-load-balancing-and-failover-tool-eureka-c10647 ef95e5
Real World Microservices • Microservicesは複数のServiceを協調させてひとつの系を成す
Real World Microservices • Microservicesは複数のServiceを協調させてひとつの系を成す ソフトウェアの枠組みに収まる概念ではない
Real World `like` Microservices • 具体的に考えてみる ◦ 食器メーカー ◦ 食品メーカー
◦ 水道局 ◦ 家具メーカー
The social division of labor • 社会的分業 ◦ 労働が社会のさまざまな生産分野に専門化することによってつくりだされる社会経済的編成 ◦
現実社会もまた専門性を組み合わせるひとつの系である
CADDi as Microservices
CADDi as Microservices
CADDi as Microservices • Patterns ◦ API Gateway ◦ Choreography
◦ Microservice Chassis ◦ Service Discovery
CADDi as Microservices • API Gateway ◦ 顧客からの発注(Request)に対して、複数のSP(Service)に発注し製品を納品 (Response)する ◦
キャッシュはCADDiでかかえる在庫と置き換えることができる ▪ 似たようなリクエスト = リピート品? ▪ Cache Hit Ratio = 在庫引当率? ◦ 流量制御はSPの負荷を考慮して発注を行うこと CADDi SP SP SP 顧客 顧客
CADDi as Microservices • Choreography ◦ メッセージを製品と置き換えることができる? ◦ 各SPで加工(Process)を行って次の工程を行う SP(Service)に発送(Publish)する
◦ Service数が増えてくると複雑度が増すということを考えると、 SC設計/運用はChoreographyよりも CADDiを中心にしたOrchestrationの方が良さそう
CADDi as Microservices • Microservice Chassis ◦ サプライチェーンを構成する全 SPに共通した機能 =
SPP? ◦ AnchorをSPに配布することでSP側での在庫情報などの Observabilityを上げることを考えられるか もしれない
まとめ • Microservicesは1つの系である • Microservicesの考え方はソフトウェアの枠を超える • CADDiをMicroservicesと置く思考実験