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
Ractorを使って超簡易的な 決済電文サーバーを実装してみた
Search
nilpoona
September 01, 2023
Programming
0
270
Ractorを使って超簡易的な 決済電文サーバーを実装してみた
Gotanda.rb#54 で発表した内容です。
nilpoona
September 01, 2023
Tweet
Share
More Decks by nilpoona
See All by nilpoona
ActiveJob AdapterにSQSを利用してみる
nilpoona
0
45
Other Decks in Programming
See All in Programming
All(?) About Point Sets
hole
0
230
FlutterKaigi 2025 システム裏側
yumnumm
0
1.2k
AIと協働し、イベントソーシングとアクターモデルで作る後悔しないアーキテクチャ Regret-Free Architecture with AI, Event Sourcing, and Actors
tomohisa
2
10k
Promise.tryで実現する新しいエラーハンドリング New error handling with Promise try
bicstone
3
1.7k
Web エンジニアが JavaScript で AI Agent を作る / JSConf JP 2025 sponsor session
izumin5210
4
2.1k
無秩序からの脱却 / Emergence from chaos
nrslib
1
10k
GeistFabrik and AI-augmented software development
adewale
PRO
0
200
[SF Ruby Conf 2025] Rails X
palkan
0
370
Honoを技術選定したAI要件定義プラットフォームAcsimでの意思決定
codenote
0
270
アーキテクチャと考える迷子にならない開発者テスト
irof
9
3.4k
Micro Frontendsで築いた 共通基盤と運用の試行錯誤 / Building a Shared Platform with Micro Frontends: Operational Learnings
kyntk
0
1.6k
大体よく分かるscala.collection.immutable.HashMap ~ Compressed Hash-Array Mapped Prefix-tree (CHAMP) ~
matsu_chara
1
160
Featured
See All Featured
Making Projects Easy
brettharned
120
6.5k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
31
2.7k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
17k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
46
7.8k
Building Adaptive Systems
keathley
44
2.8k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
A better future with KSS
kneath
239
18k
Designing for humans not robots
tammielis
254
26k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
15k
BBQ
matthewcrist
89
9.9k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
196
67k
Transcript
3BDUPSΛͬͯ؆қతͳ ܾࡁిจαʔόʔΛ࣮ͯ͠Έͨ OJMQPPOB
4NBSU#BOL *OD 4PGUXBSF&OHJOFFS ງ๛ !OJMQPPOB ࣗݾհ !OJMQPPOB
࠷ॳʹ ͙̍Β͍લ͔Β3VCZΛॳΊͯ࠷ۙ3BDUPSͷଘࡏΛͬͨͷͰ ࢼ͠ʹ3BDUPSΛͬͯ؆୯ͳܾࡁిจαʔόʔΛॻ͍ͯΈ·ͨ͠ɻ
͓͢Δ༰ w 3BDUPSΛͬͯΈͨࡶײ w ܾࡁిจͷύʔεͷงғؾ
͞ͳ͍͜ͱ w ฒྻॲཧͷৄ͍ٕ͠๏ w ܾࡁωοτϫʔΫͷৄࡉ
3BDUPS w 3VCZͰͷฒྻϓϩάϥϛϯάΛαϙʔτ͢ΔͨΊͷػೳ w ֤3BDUPS̍ͭҎ্ͷεϨουΛ࣋ͭ w 3BDUPSΦϒδΣΫτຖʹ(7-Λ࣋ͭɻ w ڞ༗ՄೳͳΦϒδΣΫτ੍͕ݶ͞Ε͍ͯΔ
w ༷ˠʹॻ͍ͯ͋Γ·͢IUUQTHJUIVCDPNSVCZSVCZCMPCNBTUFSEPDSBDUPSNE
3BDUPSΦϒδΣΫτͷੜ
εϨουηʔϑʹ͢ΔͨΊ֎෦είʔϓ͔Βִ
؆୯ͳܾࡁిจαʔόʔΛॻ͍ͯΈΔ
ܾࡁిจαʔόʔ w ܾࡁిจͷࠃࡍن֨*40Λύʔε͢Δαʔόʔ w τϥϯεϙʔτ5$1 w 5$1αʔόʔͷ੍ޚʹ3BDUPSΛͬͯΈΔ
ܾࡁిจαʔόʔ
*40ͷجຊߏ w .FTTBHF5ZQF .5* ϝοηʔδͷछྨΛද͢ w #JUNBQͲͷ%BUB&MFNFOU͕ଘࡏ͍ͯ͠Δͷ͔Λ͍ࣔͯ͠Δ w %BUB&MFNFOUτϥϯβΫγϣϯͷใΛද͢ݸʑͷϑΟʔϧυ
ిจͷύʔεॲཧʢ؆қ൛ʣ .5*औಘ #JUNBQऔಘ σʔλऔಘ
ిจͷύʔεॲཧʢ؆қ൛ʣ
ిจͷύʔεॲཧʢ؆қ൛ʣ #JUNBQʙলུ
ిจͷύʔεॲཧʢ؆қ൛ʣ
3BDUPSؒͷίϛϡχέʔγϣϯ w 1VTIܕSTFOE PCK 3BDUPSSFDFJWF w 1VMMܕ3BDUPSZJFME PCK SUBLF
3BDUPSؒͰϝοηʔδΛަ͢Δ͜ͱͰɺ࣮ߦͷಉظ͕ͱΕΔɻ
ಉ࣌ଓΛ੍ޚͯ͠ΈΔ ૹ৴͞ΕͨϝοηʔδΛड͚औΔ ίωΫγϣϯͷՃࢉɾݮࢉΛߦ͏ ଓՄೳ͔݁ՌΛ͑Δ
ಉ࣌ଓΛ੍ޚͯ͠ΈΔ ॏ͍ ଓՄೳ͔νΣοΫ
ಉ࣌ଓΛ੍ޚͯ͠ΈΔ "UPNJDʹॲཧ ͞Ε͍ͯͳ͍ͳ͍
3BDUPSؒͷίϛϡχέʔγϣϯ w 45. 4PGUXBSFUSBOTBDUJPOBMNFNPSZ w ͜ΕͰ"UPNJDʹॲཧͰ͖Δڞ༗ՄೳΦϒδΣΫτ͕ੜͰ͖Δ 3BDUPS57BSHFNΛ͍͚͑ͨ
3BDUPSؒͷίϛϡχέʔγϣϯ "UPNJDʹॲཧͰ͖ΔΦϒδΣΫτΛੜ "UPNJDʹՃࢉɾݮࢉ
ࡶײ w 5ISFBE͕ۤखͳ$16όϯυͳॲཧͰϚϧνίΞΛੜ͔ͨ͠ฒྻॲཧ͕Ͱ͖Δͷྑ͍ w 3BDUPSΦϒδΣΫτΛੜ͢Δ͚ͩͰ؆୯ʹฒྻॲཧ͕ॻָ͚͍ͯ͠ w "DUPSϞσϧͬΆ͘ͳ͍QVMMܕͷϝοηʔδަखஈ͕໘ന͍ w ҆શʹϝϞϦڞ༗͢ΔͨΊͷHFNఏڙ͠Ε͘Ε͍ͯΔͷ҆৺
w ύϑΥʔϚϯεʹ՝͕͋ΔΒ͍͕͠ɺͦͷลৄ͘͠ݟΕ͍ͯͳ͍
ίʔυ(JUIVCʹ͋ΔΑ w ຊ͝հͨ͠ίʔυ(JUIVCͰެ։͍ͯ͠·͢ w IUUQTHJUIVCDPNOJMQPPOBJTP@TFSWFS
͋Γ͕ͱ͏͍͟͝·ͨ͠