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
What Are We Doing as Merpay Architect
Search
Yuki Ito
December 14, 2021
Programming
0
1.7k
What Are We Doing as Merpay Architect
Yuki Ito
December 14, 2021
Tweet
Share
More Decks by Yuki Ito
See All by Yuki Ito
Modular Monolith Go Server with GraphQL Federation + gRPC
110y
1
890
Modular Monolith + Go @ newmo
110y
1
970
Go + GraphQL @ newmo
110y
3
720
Architect / Platform Team at KAUCHE
110y
1
540
Cloud Run + Observability / Reliability @ KAUCHE
110y
0
520
Cloud Run CI/CD + QA @ KAUCHE
110y
1
570
Microservices on Cloud Run @ KAUCHE
110y
0
210
KAUCHE Loves Go
110y
0
450
Evolution of Architecture @ Kauche
110y
3
530
Other Decks in Programming
See All in Programming
requirements with math
moony
0
520
Coding Experience Cpp vs Csharp - meetup app osaka@9
harukasao
0
120
snacks.nvim内のセットアップ不要なプラグインを紹介 / introduce_snacks_nvim
uhooi
0
350
Windows版PHPのビルド手順とPHP 8.4における変更点
matsuo_atsushi
0
370
PHPのガベージコレクションを深掘りしよう
rinchoku
0
240
プログラミング教育のコスパの話
superkinoko
0
120
AI時代のプログラミング教育 / programming education in ai era
kishida
23
21k
CRE Meetup!ユーザー信頼性を支えるエンジニアリング実践例の発表資料です
tmnb
0
360
爆速スッキリ! Rspack 移行の成果と道のり - Muddy Web #11
dora1998
1
150
英語文法から学ぶ、クリーンな設計の秘訣
newnomad
1
270
PHPでお金を扱う時、終わりのない 謎の1円調査の旅にでなくて済む方法
nakka
3
1.3k
アプリを起動せずにアプリを開発して品質と生産性を上げる
ishkawa
0
360
Featured
See All Featured
Designing Experiences People Love
moore
141
23k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
331
21k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
12k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
32
2.2k
Reflections from 52 weeks, 52 projects
jeffersonlam
349
20k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
30
1.1k
Art, The Web, and Tiny UX
lynnandtonic
298
20k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
34
2.9k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.4k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
60k
Why You Should Never Use an ORM
jnunemaker
PRO
55
9.3k
Transcript
What Are We Doing as Merpay Architect? Yuki Ito (@mrno110)
Merpay / Mercoin Architect Mercari Microservices Platform CI/CD Yuki Ito
@mrno110
Agenda ɾArchitectur e ɾ׆ಈ༰
Agenda ɾArchitecture ɾ׆ಈ༰
Microservices Cloud Spanner Cloud Spanner Cloud Spanner Cloud Spanner Cloud
Pub/Sub QR Payment Service XXX Service ZZZ Service YYY iD Payment Gateway Authority ɾɾɾ
Architecture Cloud Spanner QR Payment Service XXX Service ZZZ Service
YYY iD Payment Gateway Authority ɾɾɾ
Go Cloud Spanner QR Payment Service XXX Service ZZZ Service
YYY iD Payment Gateway Authority ɾɾɾ
gRPC Cloud Spanner QR Payment Service XXX Service ZZZ Service
YYY iD Payment Gateway Authority ɾɾɾ
Google Cloud Platform Cloud Spanner Cloud Spanner Cloud Spanner Cloud
Spanner Cloud Pub/Sub QR Payment Service XXX Service ZZZ Service YYY iD Payment Gateway Authority ɾɾɾ
Kubernetes Cloud Spanner Cloud Spanner Cloud Spanner Cloud Spanner Cloud
Pub/Sub QR Payment Service XXX Service ZZZ Service YYY iD Payment Gateway Authority ɾɾɾ
Istio Cloud Spanner Cloud Spanner Cloud Spanner Cloud Spanner Cloud
Pub/Sub QR Payment Service XXX Service ZZZ Service YYY iD Payment Gateway Authority ɾɾɾ
Agenda ɾArchitecture ɾ׆ಈ༰
Agenda ɾArchitectur e ɾ׆ಈ༰
׆ಈ༰ ɾٕज़తͳҙࢥܾఆ ɾ৫తͳ՝ͷநग़ɾղܾ ɾDesign Doc ͷϨϏϡʔ ɾAPI Gateway ͷ։ൃ ɾٕज़ͷඪ४Խɾಋೖࢧԉ
׆ಈ༰ ɾٕज़తͳҙࢥܾఆ ɾ৫తͳ՝ͷநग़ɾղܾ ɾDesign Doc ͷϨϏϡʔ ɾAPI Gateway ͷ։ൃ ɾٕज़ͷඪ४Խɾಋೖࢧԉ
ٕज़తͳҙࢥܾఆ e.g. ϚΠΫϩαʔϏεͷΞʔΩςΫνϟ
ٕज़తͳҙࢥܾఆ e.g. ϚΠΫϩαʔϏεͷΞʔΩςΫνϟ Gateway
ٕज़తͳҙࢥܾఆ e.g. ϚΠΫϩαʔϏεͷΞʔΩςΫνϟ BFF
ٕज़తͳҙࢥܾఆ e.g. ϚΠΫϩαʔϏεͷΞʔΩςΫνϟ Services
ٕज़తͳҙࢥܾఆ mercari / mercari-microservices-example
ٕज़తͳҙࢥܾఆ e.g. ΧϯύχʔؒͷγεςϜ࿈ܞํ Merpay Mercoin
ٕज़తͳҙࢥܾఆ 🧑💻 Architect 🙋 Exec (ܦӦ) 🙋 ϦʔΨϧ 🙋 ϦεΫཧ
🙋 ίϯϓϥΠΞϯε 🙋 Identity Platform 🙋 SRE 🙋 Product Engineer 🙋 ηΩϡϦςΟ
׆ಈ༰ ɾٕज़తͳҙࢥܾఆ ɾ৫తͳ՝ͷநग़ɾղܾ ɾDesign Doc ͷϨϏϡʔ ɾAPI Gateway ͷ։ൃ ɾٕज़ͷඪ४Խɾಋೖࢧԉ
׆ಈ༰ ɾٕज़తͳҙࢥܾఆ ɾ৫తͳ՝ͷநग़ɾղܾ ɾDesign Doc ͷϨϏϡʔ ɾAPI Gateway ͷ։ൃ ɾٕज़ͷඪ४Խɾಋೖࢧԉ
৫తͳ՝ͷநग़ɾղܾ e.g. QAڥͷރׇ
৫తͳ՝ͷநग़ɾղܾ e.g. QAڥͷރׇ 🧑💻 Architect 😢 QA 😢 Developer ώΞϦϯά
৫తͳ՝ͷநग़ɾղܾ e.g. QAڥͷރׇ
৫తͳ՝ͷநग़ɾղܾ
৫తͳ՝ͷநग़ɾղܾ e.g. QAڥͷރׇ 🧑💻 Architect 😄 QA 😄 Developer ಋೖࢧԉ
৫తͳ՝ͷநग़ɾղܾ e.g. QAڥͷރׇ
׆ಈ༰ ɾٕज़తͳҙࢥܾఆ ɾ৫తͳ՝ͷநग़ɾղܾ ɾDesign Doc ͷϨϏϡʔ ɾAPI Gateway ͷ։ൃ ɾٕज़ͷඪ४Խɾಋೖࢧԉ
׆ಈ༰ ɾٕज़తͳҙࢥܾఆ ɾ৫తͳ՝ͷநग़ɾղܾ ɾDesign Doc ͷϨϏϡʔ ɾAPI Gateway ͷ։ൃ ɾٕज़ͷඪ४Խɾಋೖࢧԉ
Design Doc ͷϨϏϡʔ Microserviceͷ։ൃϑϩʔ 📝 Design Docͷ࡞ 👀 Design DocͷϨϏϡʔ
📝 API (gRPC) ఆٛ 🧑💻 ࣮
Design Doc ͷϨϏϡʔ Microserviceͷ։ൃϑϩʔ 📝 Design Docͷ࡞ 👀 Design DocͷϨϏϡʔ
📝 API (gRPC) ఆٛ 🧑💻 ࣮
Design Doc ͷϨϏϡʔ Design Doc ͷ༰ ɾΞʔΩςΫνϟ ɾೝূɾೝՄ ɾσʔλ (Database,
PII ) ɾґଘαʔϏε ɾηΩϡϦςΟ ...
Design Doc ͷϨϏϡʔ Microserviceͷ։ൃϑϩʔ 📝 Design Docͷ࡞ 👀 Design DocͷϨϏϡʔ
📝 API (gRPC) ఆٛ 🧑💻 ࣮
Design Doc ͷϨϏϡʔ 📝 Design Doc 🧑💻 Architect 🧑💻 Security
🧑💻 SRE 🧑💻 Security
Design Doc ͷϨϏϡʔ Microserviceͷ։ൃϑϩʔ 📝 Design Docͷ࡞ 👀 Design DocͷϨϏϡʔ
📝 API (gRPC) ఆٛ 🧑💻 ࣮
׆ಈ༰ ɾٕज़తͳҙࢥܾఆ ɾ৫తͳ՝ͷநग़ɾղܾ ɾDesign Doc ͷϨϏϡʔ ɾAPI Gateway ͷ։ൃ ɾٕज़ͷඪ४Խɾಋೖࢧԉ
׆ಈ༰ ɾٕज़తͳҙࢥܾఆ ɾ৫తͳ՝ͷநग़ɾղܾ ɾDesign Doc ͷϨϏϡʔ ɾAPI Gateway ͷ։ൃ ɾٕज़ͷඪ४Խɾಋೖࢧԉ
API Gateway ͷ։ൃ Cloud Spanner Cloud Spanner Cloud Spanner Cloud
Spanner Cloud Pub/Sub QR Payment Service XXX Service ZZZ Service YYY iD Payment Gateway Authority ɾɾɾ
API Gateway ͷ։ൃ Cloud Spanner Cloud Spanner Cloud Spanner Cloud
Spanner Cloud Pub/Sub QR Payment Service XXX Service ZZZ Service YYY iD Payment Gateway Authority ɾɾɾ
API Gateway Pattern https://docs.microsoft.com/en-us/dotnet/architecture/microservices/architect-microservice-container-applications/direct-client-to- microservice-communication-versus-the-api-gateway-pattern
API Gateway Pattern ɾAuthentication / Authorizatio n ɾDomain / IP
Managemen t ɾTLS Terminatio n ɾData Format Transcodin g etc... Microservice ʹڞ௨͢Δͷղܾ
API Gateway ͷ։ൃ Cloud Spanner Cloud Spanner Cloud Spanner Cloud
Spanner Cloud Pub/Sub QR Payment Service XXX Service ZZZ Service YYY iD Payment Gateway Authority ɾɾɾ
API Gateway ͷ։ൃ CDN Cloud Load Balancer (Ingress) API Gateway
Server
׆ಈ༰ ɾٕज़తͳҙࢥܾఆ ɾ৫తͳ՝ͷநग़ɾղܾ ɾDesign Doc ͷϨϏϡʔ ɾAPI Gateway ͷ։ൃ ɾٕज़ͷඪ४Խɾಋೖࢧԉ
׆ಈ༰ ɾٕज़తͳҙࢥܾఆ ɾ৫తͳ՝ͷநग़ɾղܾ ɾDesign Doc ͷϨϏϡʔ ɾAPI Gateway ͷ։ൃ ɾٕज़ͷඪ४Խɾಋೖࢧԉ
ٕज़ͷඪ४Խɾಋೖࢧԉ e.g. Istio ͷಋೖ Cloud Spanner Cloud Spanner Cloud Spanner
Cloud Spanner Cloud Pub/Sub QR Payment Service XXX Service ZZZ Service YYY iD Payment Gateway Authority ɾɾɾ
ٕज़ͷඪ४Խɾಋೖࢧԉ e.g. Istio ͷಋೖ 🧑💻 Architect 🧑💻 Microservice Platform 🧑💻
Developer
׆ಈ༰ ɾٕज़తͳҙࢥܾఆ ɾ৫తͳ՝ͷநग़ɾղܾ ɾDesign Doc ͷϨϏϡʔ ɾAPI Gateway ͷ։ൃ ɾٕज़ͷඪ४Խɾಋೖࢧԉ
Vision ࣄۀΛࢧ͑ಘΔγʔϜϨεͰ৴པੑͷߴ͍ ΞʔΩςΫνϟΛઃܭ͠ɺೳಈతʹΤϯδχΞϦϯάΛઌಋ͢Δɻ
Vision
એ 1 https://gihyo.jp/book/2022/978-4-297-12519-6
એ 2 https://meety.net/matches/CbIudcYbsTNu