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.5k
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
170
至極の難問言語仕様クイズ 〜最強のマルチリンガル決定戦〜
orekyuu
2
2.1k
burikaigi2021 Rails製ECサイトの決済速度を上げろ!〜決済処理チューニングの記録〜
orekyuu
3
1.6k
実際困る!クロスドメイン間のセッション管理を考えよう
orekyuu
1
880
日本初のキャッシュレス即売会を支えた決済アプリ pixiv PAYの技術
orekyuu
1
1.6k
Other Decks in Programming
See All in Programming
初学者でも今すぐできる、Claude Codeの生産性を10倍上げるTips
s4yuba
16
13k
NPOでのDevinの活用
codeforeveryone
0
900
What's new in AppKit on macOS 26
1024jp
0
150
Porting a visionOS App to Android XR
akkeylab
0
680
リバースエンジニアリング新時代へ! GhidraとClaude DesktopをMCPで繋ぐ/findy202507
tkmru
3
970
The Modern View Layer Rails Deserves: A Vision For 2025 And Beyond @ RailsConf 2025, Philadelphia, PA
marcoroth
2
730
CDK引数設計道場100本ノック
badmintoncryer
2
480
Agentic Coding: The Future of Software Development with Agents
mitsuhiko
0
130
生成AI時代のコンポーネントライブラリの作り方
touyou
1
290
可変変数との向き合い方 $$変数名が踊り出す$$ / php conference Variable variables
gunji
0
180
効率的な開発手段として VRTを活用する
ishkawa
0
160
AIと”コードの評価関数”を共有する / Share the "code evaluation function" with AI
euglena1215
1
180
Featured
See All Featured
Code Review Best Practice
trishagee
69
19k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
45
7.5k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
47
9.6k
Build The Right Thing And Hit Your Dates
maggiecrowley
37
2.8k
Building Adaptive Systems
keathley
43
2.7k
Navigating Team Friction
lara
187
15k
Side Projects
sachag
455
42k
Imperfection Machines: The Place of Print at Facebook
scottboms
267
13k
Embracing the Ebb and Flow
colly
86
4.8k
VelocityConf: Rendering Performance Case Studies
addyosmani
332
24k
Mobile First: as difficult as doing things right
swwweet
223
9.7k
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ͱ͔ใ͕ແ͚ͩͲੜ·Ε͕ͪ • ໊લΛݟͨͱ͖ʹ͔ͬͨؾʹͳΕͯ͠·͏ • ݁Ռྔ࢈͞Εͯ͠·͏ • ݟͨ͜ͱͷͳ͍ͷܯռ৺͕ಇ͘
• ʮͳʹ͜Εා͍ɻ৮Βͳ͍Ͱ͓͜͏ʯ • ʮͳΜͰ͔͢͜Εʯ
͋͑ͯϨʔϧ͔ΒͣΕΔ • ֎ΕΔͱ͖શྗͰ • ܯռ৺Λ࣋ͨͤΔɻϨʔϧ͔Β֎Εͨͷʹܯռͤ͞Δ • ͔ͬͨؾʹͤ͞ͳ͍ɻ͝·͔͞ͳ͍ɻ