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
決済システムのトランザクション管理方法
Search
ShoheiMitani
January 29, 2019
Programming
2
650
決済システムのトランザクション管理方法
複数のサーバー間で処理を行い、データ整合性を為つためのロールバック処理について実践例を紹介します。
ShoheiMitani
January 29, 2019
Tweet
Share
More Decks by ShoheiMitani
See All by ShoheiMitani
孤独のCTOグルメという やや奇抜な企画をやった目的と効果
shoheimitani
3
1.1k
VISAカードの裏側と “手が掛かる” 決済システムの育て方
shoheimitani
39
18k
32個のPRでリリースした依存度の高いコアなモデルの安全な弄り方
shoheimitani
8
6k
本番環境のRailsでYJITをONにしてみた結果
shoheimitani
0
110
7つの入金外部サービスと連携して分かった実践的な”状態管理”設計パターン3選
shoheimitani
5
4.7k
監視を通じたサービスの逐次的進化 ~B/43の決済サービスでの取り組み~ / Kaigi on Rails 2021
shoheimitani
1
1.9k
RSpec基礎
shoheimitani
0
220
安全なリリースに向けた技術的アプローチ
shoheimitani
1
380
RailsとDBのトランザクション処理
shoheimitani
0
220
Other Decks in Programming
See All in Programming
禅の心を手に入れよ
eltociear
1
420
Balkan Ruby 2024 — How and why to run SQLite on Rails in production
fractaledmind
0
100
Elm 0.19.0 Changes
bkuhlmann
0
510
GitHub Copilotのススメ
marcy731
1
240
大規模UIKitベースアプリへのTCAの段階的導入/gradual-adoption-of-tca-in-a-large-scale-uikit-based-app
takehilo
2
210
CDKコントリビュートの最初の壁を越えよう! -簡単issueの見つけ方-
badmintoncryer
3
310
PostmanでAPIの動作確認が楽になった話
h455h1
0
190
Let's learn code review
riofujimon
2
610
GitLab CI/CD で C#/WPFアプリケーションのテストとインストーラーのビルド・デプロイを自動化する
hacarus
0
490
From Spring Boot 2 to Spring Boot 3 with Java 21 and Jakarta EE
ivargrimstad
0
790
見た目から始める生産性向上
ikumatadokoro
10
1.5k
デフォルトにして至高、RubyMineの大好きな所
ruzia
0
1k
Featured
See All Featured
Java REST API Framework Comparison - PWX 2021
mraible
PRO
18
6.9k
Build your cross-platform service in a week with App Engine
jlugia
226
17k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
14
8.4k
Designing with Data
zakiwarfel
96
4.8k
Fantastic passwords and where to find them - at NoRuKo
philnash
39
2.5k
Bash Introduction
62gerente
605
210k
Rails Girls Zürich Keynote
gr2m
91
13k
Automating Front-end Workflow
addyosmani
1357
200k
What the flash - Photography Introduction
edds
64
11k
Web development in the modern age
philhawksworth
203
10k
Product Roadmaps are Hard
iamctodd
45
9.8k
The World Runs on Bad Software
bkeepers
PRO
61
6.7k
Transcript
Re:valua t ion https://fril.jp/ L ead & Delight User F
irst Ownership Fail Smart ܾࡁγεςϜͷτϥϯβΫγϣϯཧํ๏ !&CJTVSC
3BLVNB4FSWJDF%FWFMPQNFOU(SPVQ 3BLVUFO JOD ͜͜ʹλΠτϧΛೖྗ͠·͢ɻ ࡾ୩ণฏ !TIPIFJ !4IPIFJ.JUBOJ
None
࣍ w ͡Ίʹ w ܾࡁγεςϜ֓ཁ w αʔόʔߏ w
ܾࡁॲཧͷྲྀΕ w γεςϜߏ໘Ͱͷ੍ w ϩʔϧόοΫઓུ w ϩʔϧόοΫͷํ๏ w ϩʔϧόοΫํ๏ͷબࢹ w ઃܭ࣌ͷҙ w ·ͱΊ
͡Ίʹ
͡Ίʹ w ܾࡁγεςϜͰҰఆͷΤϥʔ͕ඞͣൃੜ͢Δ w ϢʔβʔىҼɿΧʔυೝূΤϥʔɺೖྗใΤϥʔ w γεςϜىҼɿԆɺαʔόʔোɺෆ۩߹ w
దͳϩʔϧόοΫํ๏Λબ͠ɺσʔλͷ߹ੑΛอͭ͜ͱ͕ॏཁ w ࠓͦͷϩʔϧόοΫͷํ๏ʹ͍ͭͯͷ͓
ܾࡁγεςϜ֓ཁ
αʔόʔߏʢ؆қਤʣ Users Internet औҾαʔόʔ 8FC7JFX ܾࡁαʔόʔ "1*αʔόʔ ܾࡁߦձࣾ
σʔλϕʔε ϦΫΤετ લॲཧ ܾࡁϦΫΤετ ޙॲཧ ʢόοΫάϥϯυʣ 1VTI௨ ྃը໘ w %#Λڞ༗͢Δஅ͞Εͨ ϞϊϦεߏ w Ұͭͷॲཧʹɺෳͷαʔ όʔ௨৴͕ඞཁʹͳΔ
ܾࡁॲཧͷྲྀΕ w จใͷ࡞ w ঢ়ଶͷมߋ લॲཧ ܾࡁॲཧ w
ࢧ͍σʔλͷ࡞ w ϙΠϯτച্ۚΫʔ ϙϯͷফඅ ޙॲཧ w 1VTI௨ϝʔϧ ௨ औҾαʔόʔ ܾࡁαʔόʔ "1*αʔόʔ Internet ܾࡁߦձࣾ
γεςϜߏ໘Ͱͷ੍ औҾαʔόʔ ܾࡁαʔόʔ ܾࡁߦձࣾ ॲཧ͝ͱʹαʔόʔ͕͔Ε͍ͯΔͨΊɺҰͭͷ%#τϥϯβΫγϣϯͰঢ়ଶΛཧ͢Δ͜ͱෆՄ ೳɻ τϥϯβΫγϣϯ τϥϯβΫγϣϯ
τϥϯβΫγϣϯ τϥϯβΫγϣϯ
γεςϜߏ໘Ͱͷ੍ औҾαʔόʔ ܾࡁαʔόʔ ܾࡁߦձࣾ ॲཧ͝ͱʹαʔόʔ͕͔Ε͍ͯΔͨΊɺҰͭͷ%#τϥϯβΫγϣϯͰঢ়ଶΛཧ͢Δ͜ͱෆՄ ೳɻ τϥϯβΫγϣϯ τϥϯβΫγϣϯ
τϥϯβΫγϣϯ τϥϯβΫγϣϯ Τϥʔൃੜ࣌ʹ ͲͷΑ͏ʹσʔλΛ͔͢
%#τϥϯβΫγϣϯׂ͕͞ΕΔҎ্ɺ ಠࣗʹϩʔϧόοΫॲཧΛ࣮͢Δ͔͠ͳ͍
ϩʔϧόοΫઓུ
ϩʔϧόοΫͷΠϝʔδ w ՄೳͳݶΓ%#τϥϯβΫγϣϯ ʹཔΒͳ͍ w Τϥʔൃੜ࣌ʹͦͷใΛ%# อଘ͢ΔͨΊ w
ΧϓηϧԽͨ͠Ϋϥεɺൣ ғͰͷσʔλҰ؏ੑΛอͭ w ͨͩ͠ɺSPMMCBDLϝιου QVCMJDʹͯ͠֎෦͔Βݺͼग़͠Մ ೳʹ͢Δ
ςʔϒϧߏ ࠷৽ঢ়ଶͷཧ ߋ৽ཤྺͷཧ w ࠷৽ঢ়ଶΛཧͤ͞Δͷ ܦཧ্ͷཧ༝ w Τϥʔൃੜ࣌ʹTUBUVT
ΧϥϜΛߋ৽͢Δ w อ༗ϙΠϯτച্ۚͳ Ͳͷߴܥ͏গ͠ෳࡶ ʹͳΔ
ಠࣗͷϩʔϧόοΫख๏ͷ1SPT$POT 1SPT $POT ॲཧ݁ՌΤϥʔཧ༝ͷهʹڧ͍ ࣮͕͔ͳΓෳࡶʹͳΓɺ ςʔϒϧઃܭ͔࣌Βྀ͕ඞཁ ΞʔΩςΫνϟͷมߋʹॊೈʹରԠՄೳ Ұͭͷ߹ੑϛε͕େ͖ͳࣦഊʹܨ͕Δ
σʔλͷ͋Δ͖࢟ΛίʔυͰදݱͰ͖Δ ػೳՃ࣌ͷ࣮࿙Εɺ ϦϑΝΫλϦϯά࣌ͷσάϨ͕͋Γ͏Δ ॊೈʹ࣮Մೳ͕ͩɺٕज़తқ͕ߴ͍
ಠࣗͷϩʔϧόοΫख๏ʹͷ1SPT·ͱΊ w ॲཧϓϩηεΛશͯه͍ͨ͠γεςϜͱ૬ੑ͕ྑ͍ w %#ϩʔϧόοΫ͕ͳ͍ͷͰɺ్தهͨ͠σʔλ͕ফ͑ͳ͍ w ܦཧܥ$4͍߹Θͤͱ૬ੑ͕͍͍ w
ฦۚରԠͳͲͷࣗಈԽλεΫΛࠐΈ͍͢ w ඞཁͳใΛશͯ͢͜ͱ͕Ͱ͖Δ w γεςϜͷΤϥʔϨʔτͷܭଌࢦඪʹͳΔ
ϩʔϧόοΫॲཧ࣮ͷצॴ ʢ͜Ε·Ͱͷࣦഊஊͷڞ༗ʣ
ϩʔϧόοΫॲཧ࣮ͷצॴᶃʢࠓ·Ͱͷࣦഊஊʣ ॲཧͷίϯςΩετͱαʔόʔͷڥքΛҰகͤ͞Δ औҾαʔόʔ ܾࡁαʔόʔ ܾࡁϦΫΤετ ࣦഊͨ͠ͷͰɺɹ Τϥʔίʔυฦ٫ ϩʔϧόοΫ
/(ͳྫ ܾࡁαʔόʔͰϩʔϧόοΫ ͤ͞Α͏ w োରԠͳͲͷۓٸ࣌ʹ Γ͕ͪ w ܾࡁαʔόʔͷมߋ࣌ʹɺ औҾαʔόʔଆͷςετίʔ υͰ୲อͰ͖ͳ͍ w ͕ࣝࢄ͢Δ w ਓ͕εέʔϧ͢Δͱࢮ͵
ϩʔϧόοΫॲཧ࣮ͷצॴᶄʢࠓ·Ͱͷࣦഊஊʣ ϝΠϯॲཧͱϩʔϧόοΫॲཧΛΧϓηϧԽͯ͠อकੑΛߴΊΔ 4FSWJDF .PEFM
·ͱΊ w ܾࡁγεςϜͰҰఆͷΤϥʔ͕ඞͣൃੜ͢Δ w ಠࣗʹϩʔϧόοΫॲཧΛ࣮ͯ͠ରԠ w ҆ఆͨ͠อकੑͷߴ͍γεςϜʹ͢Δʹ w
ॲཧͷίϯςΩετͱαʔόʔͷڥքΛҰகͤ͞Δ w ϝΠϯॲཧͱϩʔϧόοΫॲཧΛΧϓηϧԽͯ͠อकੑΛߴΊΔ
͝੩ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠