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
pixiv PAYで運用している フレンズパターン
Search
orekyuu
March 05, 2019
Programming
1
3.4k
pixiv PAYで運用している フレンズパターン
pixiv Tech Salon LT
orekyuu
March 05, 2019
Tweet
Share
More Decks by orekyuu
See All by orekyuu
[JJUG CCC 2022 fall] Fargate上のJVMからCPUを認識するまで 〜正しく認識されないCPUの謎を追え〜
orekyuu
1
2.2k
OpenJDKアンカンファレンス 2022-09
orekyuu
0
160
至極の難問言語仕様クイズ 〜最強のマルチリンガル決定戦〜
orekyuu
2
2.1k
burikaigi2021 Rails製ECサイトの決済速度を上げろ!〜決済処理チューニングの記録〜
orekyuu
3
1.6k
実際困る!クロスドメイン間のセッション管理を考えよう
orekyuu
1
860
日本初のキャッシュレス即売会を支えた決済アプリ pixiv PAYの技術
orekyuu
1
1.6k
Other Decks in Programming
See All in Programming
AIエージェントによるテストフレームワーク Arbigent
takahirom
0
270
Practical Domain-Driven Design - Workshop at NDC 2025
mufrid
0
130
try-catchを使わないエラーハンドリング!? PHPでResult型の考え方を取り入れてみよう
kajitack
3
310
〜可視化からアクセス制御まで〜 BigQuery×Looker Studioで コスト管理とデータソース認証制御する方法
cuebic9bic
1
260
TypeScript Language Service Plugin で CSS Modules の開発体験を改善する
mizdra
PRO
3
2.4k
Rethinking Data Access: The New httpResource in Angular
manfredsteyer
PRO
0
220
イベントソーシングとAIの親和性ー物語とLLMに理解できるデータ
tomohisa
1
160
Interface vs Types ~型推論が過多推論~
hirokiomote
1
230
"使いづらい" をリバースエンジニアリングする UI の読み解き方
rebase_engineering
0
110
JSAI2025 RecSysChallenge2024 優勝報告
unonao
1
380
iOSアプリ開発もLLMで自動運転する
hiragram
6
2.1k
AI時代のリアーキテクチャ戦略 / Re-architecture Strategy in the AI Era
dachi023
0
190
Featured
See All Featured
Rails Girls Zürich Keynote
gr2m
94
13k
Optimizing for Happiness
mojombo
378
70k
Faster Mobile Websites
deanohume
307
31k
Building a Scalable Design System with Sketch
lauravandoore
462
33k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.5k
GitHub's CSS Performance
jonrohan
1031
460k
Unsuck your backbone
ammeep
671
58k
Scaling GitHub
holman
459
140k
Intergalactic Javascript Robots from Outer Space
tanoku
271
27k
Documentation Writing (for coders)
carmenintech
71
4.8k
How STYLIGHT went responsive
nonsquared
100
5.6k
Visualization
eitanlees
146
16k
Transcript
pixiv PAYͰӡ༻͍ͯ͠Δ ϑϨϯζύλʔϯ pixiv.inc @orekyuu
RailsͷϨʔϧ͔Β֎ΕΔͰ͢
@orekyuu pixiv PAYͷRailsϚϯ ࠷ۙSpring Boot/Java JVMͱ͓ֆඳ͖͕͖
ϏδωεϩδοΫͷஔ͖ʹࠔΔ • RailsͰجຊతʹARͷModelʹΨγΨγϩδοΫΛॻ͍ͯ͘ • ෳͷModelʹ·͕ͨͬͨΓɺͲͷModelʹஔ͍ͯҧײͷ͋Δ ϩδοΫͬͯͳ͍Ͱ͔͢ʁ • ஔ͖ɺ΄͍͠Ͱ͢ΑͶʁ
Αͬ͠Ό4FSWJDFͩʂʂʂ
Service? • ͦͷServiceͬͯͲͷServiceͷ͜ͱݴͬͯΔʁ • Domain Service? • Application Service?
• ΞϓϦํ໘ͳΒ֎෦APIݺͼग़͢ΫϥεΛServiceͬͯݴͬͨΓ͢ΔΑͶ
Serviceܯ͕ݱΕͯ໘
ϑϨϯζύλʔϯΛಋೖ
ϑϨϯζύλʔϯ • app/friendsσΟϨΫτϦʹೖΕΔϏδωεϩδοΫ͚ͩΛ࣋ͭΫϥε • Ϋϥεͷ໋໊erܥͰऴΘΔ˓˓͢ΔਓͬΆ໊͍લʹ͢Δ • Ϋϥεͷઌ಄ʹʮ˓˓͢Δͷ͕ಘҙͳϑϨϯζʯͱ͍͏ίϝϯτΛೖΕΔ ྫ͑PushNotificator, SlackPostmanͳͲ
ʁʁʁʮͦΕͬͯ4FSWJDFͰ͆ʯ
ϑϨϯζύλʔϯͷޮՌ • ͕ٞΘΒ͔͘ͳͬͨ • ʮͦΕͦͷΫϥεͷͰͳ͍ͷͰʁʯˠ • ʮ͜ΕͩͱΩϟϥཱͬͯͳ͍ΑͶʁʯʮͷ͚ͷͰʁ͆ʯ • ServiceϝιουΛҰͭʹ͢Δ͖Έ͍ͨͳ͕ٞͳ͘ͳͬͨ
• ਖ਼͠͞ͷٞͰͳ͘ϑϨϯζΛϏδωεʹ߹Θ͍ͤͯ͘ • ػೳͱϑϨϯζ͕ରԠ͢ΔͷͰमਖ਼Օॴ͕Θ͔Γ͘͢ͳͬͨ
ʮServiceϝιουҰ͔ͭ࣋ͨ͠ͳ͍ʯ
ʮ͏Δͤ͐ʂδϟ˓ϦύʔΫ Ͱڐ͞ΕΔΜͩΑʂʯ
มͳ໊લΛ͚ͭΔ • ৽͘͠ೖͬͨϓϩδΣΫτʹapp/friendsͬͯ͋Δͱܯռ͠·ͤΜʁ • ܯռ͢Δͱ৮Γͨ͘ͳ͘ͳΔ • ʮkessai_suruyatsu_saisin.rbʯͱ͔ාͯ͘৮Γͨ͘ͳ͍Ͱ͠ΐ͆
มͳ໊લΛ͚ͭΔ • ͳΜͱ͔Serviceͱ͔ͳΜͱ͔Managerͱ͔ใ͕ແ͚ͩͲੜ·Ε͕ͪ • ໊લΛݟͨͱ͖ʹ͔ͬͨؾʹͳΕͯ͠·͏ • ݁Ռྔ࢈͞Εͯ͠·͏ • ݟͨ͜ͱͷͳ͍ͷܯռ৺͕ಇ͘
• ʮͳʹ͜Εා͍ɻ৮Βͳ͍Ͱ͓͜͏ʯ • ʮͳΜͰ͔͢͜Εʯ
͋͑ͯϨʔϧ͔ΒͣΕΔ • ֎ΕΔͱ͖શྗͰ • ܯռ৺Λ࣋ͨͤΔɻϨʔϧ͔Β֎Εͨͷʹܯռͤ͞Δ • ͔ͬͨؾʹͤ͞ͳ͍ɻ͝·͔͞ͳ͍ɻ