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
大量購入を支える 決済トランザクション設計 / EC Payment Transaction...
Search
Kazuyoshi Tsuchiya
June 24, 2020
Programming
5
1.8k
大量購入を支える 決済トランザクション設計 / EC Payment Transaction Architecture
GMO Developers Night #10 ペパボ EC テックカンファレンス 2020.06.24
https://pepabo.connpass.com/event/179445/
Kazuyoshi Tsuchiya
June 24, 2020
Tweet
Share
More Decks by Kazuyoshi Tsuchiya
See All by Kazuyoshi Tsuchiya
1年間単体テストを書き続けた現場から送る Vue Component のテスト / Vue Component Test
tsuchikazu
27
25k
Other Decks in Programming
See All in Programming
Java Webフレームワークの現状 / java web framework at burikaigi
kishida
9
2.2k
Unity Android XR入門
sakutama_11
0
160
Grafana Loki によるサーバログのコスト削減
mot_techtalk
1
130
Domain-Driven Transformation
hschwentner
2
1.9k
Honoをフロントエンドで使う 3つのやり方
yusukebe
7
3.3k
時計仕掛けのCompose
mkeeda
1
300
Lottieアニメーションをカスタマイズしてみた
tahia910
0
130
pylint custom ruleで始めるレビュー自動化
shogoujiie
0
120
データの整合性を保つ非同期処理アーキテクチャパターン / Async Architecture Patterns
mokuo
47
17k
SpringBoot3.4の構造化ログ #kanjava
irof
2
1k
責務と認知負荷を整える! 抽象レベルを意識した関心の分離
yahiru
3
540
JavaScriptツール群「UnJS」を5分で一気に駆け巡る!
k1tikurisu
9
1.8k
Featured
See All Featured
Mobile First: as difficult as doing things right
swwweet
223
9.3k
Building a Scalable Design System with Sketch
lauravandoore
461
33k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
30
4.6k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
129
19k
The World Runs on Bad Software
bkeepers
PRO
67
11k
Unsuck your backbone
ammeep
669
57k
Scaling GitHub
holman
459
140k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
33
2.8k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
59k
The MySQL Ecosystem @ GitHub 2015
samlambert
250
12k
Code Reviewing Like a Champion
maltzj
521
39k
How to train your dragon (web standard)
notwaldorf
91
5.8k
Transcript
ྑ(.01FQBCP *OD (.0%FWFMPQFST/JHIUϖύϘ&$ςοΫΧϯϑΝϨϯε େྔߪೖΛࢧ͑Δ ܾࡁτϥϯβΫγϣϯઃܭ
(.0ϖύϘ&$ࣄۀ෦ςΫχΧϧϦʔυ ྑ!UTVDIJLB[V 7VFKTຊ6TFS(SPVQ$PSF4UB⒎ IUUQTUTVDIJLB[VOFU
ܾࡁτϥϯβΫγϣϯͱ Χʔτʹ͍ΕΔ ॅॴೖྗ จ֬ఆϘλϯԡ͢ จྃ
ܾࡁτϥϯβΫγϣϯͱ Χʔτʹ͍ΕΔ ॅॴೖྗ จ֬ఆϘλϯԡ͢ จྃ ͜ͷؒͷ͜ͱ
ܾࡁτϥϯβΫγϣϯͰ͍ͬͯΔ͜ͱ wͷࡏݿΛݮΒ͢ wΫϨΧͳͲͷܾࡁ"1*ͷ࣮ߦ wडσʔλͷ࡞ wϝʔϧϓογϡ௨ͳͲ
σʔλෆ߹ແ͘ େྔͷܾࡁτϥϯβΫγϣϯΛ ࡹ͖Δ
ݱ࣮తʹෆՄೳ
$"1ఆཧ Ұ؏ੑ $POTJTUFODZ Մ༻ੑ "WBJMBCJMJUZ
ωοτϫʔΫஅੑ 1BSUJUJPOUPMFSBODF wͭΛಉ࣌ʹຬͨ͢͜ͱෆՄೳ w ޠฐΛڪΕͣʹ͍͏ͱ ࢄγεςϜʹ͓͍ͯɺҰ؏ੑͱՄ༻ੑͲͪ Βຬͨ͢ͷແཧ
ྫ Ұ؏ੑΛຬͨ͢ มͳσʔλΛڐ͞ͳ͍ ͷࡏݿΛݮΒ͢ ΫϨΧͳͲͷܾࡁ"1*ͷ࣮ߦ डσʔλͷ࡞ w͜ͷதͷҰ෦͚ͩޭ͍ͯ͠Δঢ়ଶͱ͍͏ͷɺ͓͔͍͠
wશͯޭ͢Δ͔ɺશࣦͯഊʹ͢Δ͔ wͲͪΒ͔ʹͳΒͳ͚ΕͳΒͳ͍
ͦͷ݁Ռ Կ͔͕όʔϯͱ٧·༷ͬͨࢠ
Կ͕ى͖ͨʁ w৭ͷॲཧࡏݿߋ৽ͰɺߦϩοΫΛ͔͚͍ͯΔ wಉҰτϥϯβΫγϣϯͰܾࡁ"1*ΛؚΊͨશͯͷॲཧΛ࣮ࢪ wશͯͷॲཧ͕ऴΘΒͳ͍ͱɺϩοΫղআ͞Εͳ͍ ࡏݿߋ৽ ܾࡁ"1* ड࡞ ௨ͳͲ ࡏݿߋ৽ ܾࡁ"1*
ड࡞ ͪ
Ұ؏ੑΛऔΒͣʹɺ Մ༻ੑΛॏࢹͨ͠ઃܭ͕ඞཁ
#"4&ಛੑ #"ɿ#BTJDBMMZ"WBJMBCMFʢৗʹར༻Մೳʣ 4ɿ4PGUTUBUFʢҰ࣌తʹҰ؏ੑͷͳ͍ঢ়ଶΛڐ༰ʣ &ɿ&WFOUVBM$POTJTUFODZʢଈ࣌Ͱͳ݁͘Ռ߹ੑΛऔΔʣ wΞϓϦέʔγϣϯͷϨΠϠʔͰσʔλ߹ੑͷ୲อ͢Δઓུ wதࠃͰΞϦϖΠɺຊͰϝϧϖΠͳͲͳͲʜ
࣮ࡍʹΧϥʔϛʔͰ ࣮ફ͍ͯ͠Δ͜ͱ
ܾࡁτϥϯβΫγϣϯॲཧͷࡉԽ wࡏݿΛݮΒͨ͠λΠϛϯάͰɺͦΕ͚ͩDPNNJUͯ͠͠·͓͏ ࡏݿߋ৽ ܾࡁ"1* ड࡞ ௨ͳͲ ࡏݿߋ৽ ܾࡁ"1* ड࡞ ௨ͳͲ
ͪ
ܾࡁτϥϯβΫγϣϯॲཧͷࡉԽ wޙड़͢ΔิঈτϥϯβΫγϣϯ͕ෳࡶԽ͢ΔͨΊɺͳΔ͘࠷খ wҎԼͷ߹ɺࡉԽཁૉͱͯ͠ߟ͑Δͱྑ͍ wϩοΫ͕ൃੜ͢Δ෦ w֎෦"1*ϦΫΤετ͢Δ෦
ิঈτϥϯβΫγϣϯ wલʹਐΊΒΕͳ͍߹ɺࠓ·Ͱ࣮ߦ͖ͯͨ͠ૢ࡞ΛҰ͖ͪΜͱϩʔ ϧόοΫ͢Δඞཁ͕͋Δ wࣦഊ͢Δͱ݁Ռ߹ੑ͕ͱΕͳ͘ͳΔͨΊɺϦΧόϦʔՄೳʹ͢Δ wϦτϥΠՄೳ wႈੑ ͋ͬͨ΄͏͕҆৺
ิঈτϥϯβΫγϣϯ ࡏݿߋ৽ ܾࡁ"1* ड࡞ ௨ͳͲ SPMMCBDL ࡏݿߋ৽ SPMMCBDL ܾࡁ"1* Τϥʔ͕ى͖ͨͱ͖
SFUSZ SFUSZ
ิঈτϥϯβΫγϣϯ ࡏݿߋ৽ ܾࡁ"1* ड࡞ ௨ͳͲ SPMMCBDL ࡏݿߋ৽ SPMMCBDL ܾࡁ"1* SFUSZ
SFUSZ λΠϜΞτൃੜ࣌ɺ ޭ͍ͯ͠Δ͔ࣦഊ͍ͯ͠Δ͔Θ͔Βͳ͍ Ұఆ࣌ؒޙʹܾࡁͷঢ়ଶΛ֬ೝͯ͠ SPMMCBDL
σʔλಥ߹ʢ3FDPODJMFʣ wσʔλ߹ੑ͕ͪΌΜͱऔΕͯΔ͔Ͳ͏͔ʹ͍ͭͯɺԿΒ͔ͷํ๏Ͱ ֬ೝ͘͠ϞχλϦϯά͢Δඞཁ͕͋Δ
σʔλಥ߹ʢ3FDPODJMFʣ wܾࡁͱจͷσʔλ͕Ұக͢Δ͔͕ɺ࠷ॏཁ wࣗಈͰݕɺ͙͢ʹରԠ͢ΔΈԽ͕ඞཁ w࣌όονͰJTTVF͕࡞͞Εɺ߹ੑΛอͭΞΫγϣϯ
ͦͷ݁Ռͱࠓޙ wຖʹࡹ͚ΔܾࡁτϥϯβΫγϣϯɺ͜ΕΛ͢Δ͚ͩͰഒҎ্ wεέʔϧΞτՄೳͳঢ়ଶ wLTͰͷΦʔτεέʔϧϦιʔεͷ༗ޮ׆༻ w࣍ͷϘτϧωοΫͷΞϓϩʔν w%#ͷίωΫγϣϯΓͳ͘ͳΒͳ͍Α͏ʹɺڞ༗%#͔Βͷ٫ wܾࡁ"1*ͷෛՙࢄͷͨΊඇಉظԽ
·ͱΊ wେྔߪೖΛࡹ͘ʹɺҰ؏ੑͷͳ͍ঢ়ଶΛڐ༰ͯ͠ɺ݁Ռ߹ੑΛͱ Δඞཁ͕͋Δ wܾࡁτϥϯβΫγϣϯͷࡉԽ wิঈτϥϯβΫγϣϯ wσʔλಥ߹ wͦͯ͠৽ͨͳϘτϧωοΫͱͷઓ͍͕࢝·͍ͬͯΔ