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
実例から学ぶ、最後まで諦めない決済サービス移行方法/phperkaigi-2020
Search
litencatt
February 11, 2020
Technology
2
1.3k
実例から学ぶ、最後まで諦めない決済サービス移行方法/phperkaigi-2020
https://phperkaigi.jp/2020/
02/11 10:55〜 Track B
litencatt
February 11, 2020
Tweet
Share
More Decks by litencatt
See All by litencatt
chrome-extention-development-start-with-template
litencatt
1
80
15年続くWebサービスの開発現場のイマ/muumu-development-env
litencatt
0
62
オブジェクト指向×思考×試行 / OOP x Study x Try
litencatt
1
460
とあるペパボカレッジ1期生がこの1年間で学習してきたこと / Studying to be a web engineer
litencatt
4
530
ムームードメイン ショッピングカートを支える技術! / muumuu-shopping-cart-tech
litencatt
2
5.4k
CI環境をDockerで再現する/Build the testing containers
litencatt
0
850
201612_一歩踏み出した先にあったもの
litencatt
4
1.3k
Other Decks in Technology
See All in Technology
Active Directory攻防
cryptopeg
PRO
8
5.3k
役員・マネージャー・著者・エンジニアそれぞれの立場から見たAWS認定資格
nrinetcom
PRO
3
5.7k
AIエージェント元年
shukob
0
150
(機械学習システムでも) SLO から始める信頼性構築 - ゆる SRE#9 2025/02/21
daigo0927
0
260
コンテナサプライチェーンセキュリティ
kyohmizu
1
140
入門 PEAK Threat Hunting @SECCON
odorusatoshi
0
150
クラウドサービス事業者におけるOSS
tagomoris
4
1k
依存パッケージの更新はコツコツが勝つコツ! / phpcon_nagoya2025
blue_goheimochi
3
210
AWSを活用したIoTにおけるセキュリティ対策のご紹介
kwskyk
0
340
ディスプレイ広告(Yahoo!広告・LINE広告)におけるバックエンド開発
lycorptech_jp
PRO
0
310
Goで作って学ぶWebSocket
ryuichi1208
3
2.7k
IAMポリシーのAllow/Denyについて、改めて理解する
smt7174
2
200
Featured
See All Featured
Fontdeck: Realign not Redesign
paulrobertlloyd
83
5.4k
Documentation Writing (for coders)
carmenintech
67
4.6k
Practical Orchestrator
shlominoach
186
10k
Bootstrapping a Software Product
garrettdimon
PRO
306
110k
GraphQLの誤解/rethinking-graphql
sonatard
68
10k
How to Think Like a Performance Engineer
csswizardry
22
1.4k
Raft: Consensus for Rubyists
vanstee
137
6.8k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
3.7k
4 Signs Your Business is Dying
shpigford
182
22k
A better future with KSS
kneath
238
17k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
21
2.5k
Designing for Performance
lara
604
68k
Transcript
தଜޫ༎(.01FQBCP *OD 1)1FS,BJHJ ࣮ྫ͔ΒֶͿɺ ࠷ޙ·ͰఘΊͳ͍ܾࡁαʔ ϏεҠߦํ๏
ΤϯδχΞ தଜޫ༎!MJUFODBUU ϗεςΟϯάࣄۀ෦ϗεςΟϯάάϧʔϓ$9νʔϜ
w ܾࡁαʔϏεҠߦΛܦݧͯ͠ΈͯΘ͔ͬͨ wҠߦΛఘΊͣޭͤ͞ΔʹԿΛ͢ΕΑ͍ͷ͔ʁ wͦͷֶͼʹࢸͬͨʮఘΊͦ͏ʹͳͬͨग़དྷࣄʯ w Λ͓͠·͢ ͜ͷൃදͰ͍͑ͨ͜ͱ
ܾࡁαʔϏεҠߦͷഎܠ ܾࡁαʔϏεҠߦΛޭͤ͞Δʹʁ ·ͱΊ ࣍
ܾࡁαʔϏεҠߦͷഎܠ
w ʮ͓͍͞Άʂʯͱ͍͏αʔϏεΛͬͯ·͔͢ʁ w ϖύϘ͕ӡӦ͢ΔҰ෦ͷαʔϏεͰར༻ྉࢧ͍ʹ͑Δ ΥϨοταʔϏε ܾࡁαʔϏεҠߦͷഎܠ IUUQTPTBJQPKQ
w ʮ͓͍͞Άʂʯͱ͍͏αʔϏεΛͬͯ·͔͢ʁ w ϖύϘ͕ӡӦ͢ΔҰ෦ͷαʔϏεͰར༻ྉࢧ͍ʹ͑Δ ΥϨοταʔϏε w ϖύϘαʔϏε͚ʹΫϨΧܾࡁߦػೳ"1*ఏڙ ܾࡁαʔϏεҠߦͷഎܠ αʔϏε" αʔϏε#
αʔϏε$ αʔϏε% ͓͍͞Άʂ ܾࡁαʔϏε
ܾࡁαʔϏεҠߦͷഎܠ ͓͍͞Άʂͷར༻͢ΔΫϨΧܾࡁαʔϏεΛʹ ಉӡӦձ͕ࣾఏڙ͢Δ৽ܾࡁαʔϏεҠߦ͢Δ
w ݱࡏར༻͍ͯ͠ΔچܾࡁαʔϏεͷऴྃͷ͓Βͤ w ݄Ͱऴྃ w ෆਖ਼ͳΫϨΧܾࡁͰͷνϟʔδόοΫ͕ʑ૿Ճ͍ͯ͠Δ w ෆਖ਼ࢭαʔϏεΛૣ͘ಋೖ͍ͨ͠ ܾࡁαʔϏεҠߦͷഎܠ ͓͍͞Άʂͷར༻͢ΔΫϨΧܾࡁαʔϏεΛʹ
ಉӡӦձ͕ࣾఏڙ͢Δ৽ܾࡁαʔϏεҠߦ͢Δ ͳ͔ͥʁ
ܾࡁαʔϏεҠߦΛޭͤ͞Δ ʹʁ
w ૣظʹଧͪ߹ΘͤΛ࣮ࢪ͢Δ w ࣄલʹຊ൪ڥͰಈ࡞֬ೝΛ࣮ࢪ͓ͯ͘͠ w ສ͕ҰͷࡍͷରԠϑϩʔΛ༻ҙ͓ͯ͘͠ ܾࡁαʔϏεҠߦΛޭͤ͞Δʹʁ
w ૣظʹଧͪ߹ΘͤΛ࣮ࢪ͢Δ w ࣄલʹຊ൪ڥͰಈ࡞֬ೝΛ࣮ࢪ͓ͯ͘͠ w ສ͕ҰͷࡍͷରԠϑϩʔΛ༻ҙ͓ͯ͘͠ ܾࡁαʔϏεҠߦΛޭͤ͞Δʹʁ
ૣظʹଧͪ߹ΘͤΛ࣮ࢪ͢Δ
ϖύϘ ࠓճͷҠߦʹඞཁͳରԠ αʔϏε" αʔϏε# αʔϏε$ αʔϏε% ͓͍͞Άʂ "1* ܾࡁαʔϏεӡӦձࣾ چܾࡁαʔϏε
৽ܾࡁαʔϏε ձһσʔλҠߦ͕ඞཁ ΫϨΧܾࡁߦ"1*Λ ࣾαʔϏεʹఏڙ w ܾࡁαʔϏεӡӦଆͰͷձһσʔλҠߦಉ࣌ظʹ࣮ࢪ͠ ͯΒ͏ඞཁ͕͋ͬͨ w ͦͷͨΊҠߦ࣮ࢪʹ͍ͭͯͷଧͪ߹ΘͤΛ࣮ࢪͨ͠
w ܭըҊΛ࡞͢Δஈ֊ʹ͓͍ͯ w ҠߦܭըҊΛ͚ࣗͨͪͩͰߟ͑͗͢ͳ͍ w ૣظʹܾࡁαʔϏεӡӦଆͱଧͪ߹ΘͤΛ࣮ࢪ͢Δ ૣظʹଧͪ߹ΘͤΛ࣮ࢪ͢Δ
͜ͷֶͼʹࢸΔࠓճఘΊͦ͏ʹ ͳͬͨग़དྷࣄͦͷ
w ҠߦܭըཱҊॳͷҠߦํ w αʔϏεແఀࢭͰ͔ͭ҆શʹܾࡁαʔϏεҠߦ͍ͨ͠ w ͦ͜Ͱஈ֊తͳҠߦܭըҊΛ࡞ͨ͠ ໖ີͳҠߦܭըΛཱ͍ͯͯͨ چܾࡁαʔϏε ৽چܾࡁαʔϏε ฒߦӡ༻
৽ܾࡁαʔϏε ..:: ".)).. ..:: ".))..
w ࣌ؒΛ͔͚ͯௐࠪɾݕ౼ͯ͠Ҡߦํ๏Λܭըͨ͠ w ܾࡁαʔϏεӡӦଆͱͷଧͪ߹Θͤ࣌ʹ͜ͷܭըΛఏҊ w ͔͠͠૬खଆͷγεςϜͷ্༷ͷ੍ʹҾ͔͔ͬͬͨ w ܭըҊΛݟ͟͞ΔΛ͑ͳ͔ͬͨ ఘΊͦ͏ʹͳͬͨग़དྷࣄ
w ࠷ऴతʹҎԼͷํ๏ɾఔͰҎ߱Λ࣮ࢪ w ϝϯςφϯεΛڬΈܾࡁαʔϏεΛશҠߦ͢Δ w ͔͠(8લͷ ۚ ʹҠߦΛ࣮ࢪ͢Δ ఘΊͦ͏ʹͳͬͨग़དྷࣄ چܾࡁαʔϏε
ϝϯςφϯε ͦͷؒʹձһσʔλҠߦ ৽ܾࡁαʔϏεରԠϦϦʔε ৽ܾࡁαʔϏε ". ".
w ͳ͔ͥʁ w ࡞ͨ͠Ҡߦܭը͕ඞ࣮ͣ͠ࢪͰ͖ΔͱݶΒͳ͍ w ͦͷࡍͷਫ਼ਆతμϝʔδΛݮΒͨ͢Ίʹ ૣظʹଧͪ߹ΘͤΛ࣮ࢪ͢Δ
શҠߦͤ͟ΔΛಘͳ͍ੈքઢʹ ౸ୡͨ͠զʑɺͲ͏ͬͯ͜ͷ ঢ়گΛΓͬͨͷ͔ʁ
w ૣظʹଧͪ߹ΘͤΛ࣮ࢪ͢Δ w ࣄલʹຊ൪ڥͰಈ࡞֬ೝΛ࣮ࢪ͓ͯ͘͠ w ສ͕ҰͷࡍͷରԠϑϩʔΛ༻ҙ͓ͯ͘͠ ܾࡁαʔϏεҠߦΛޭͤ͞Δʹʁ
ࣄલʹຊ൪ڥͰಈ࡞֬ೝΛ࣮ ࢪ͓ͯ͘͠
w ςετڥͰेʹಈ࡞֬ೝΛߦ্ͬͨͰ w ࣄલʹຊ൪ڥͰಈ࡞֬ೝΛ࣮ࢪɾ͓ྃͯ͘͠ ࣄલʹຊ൪ڥͰಈ࡞֬ೝΛ࣮ࢪ
ςετڥͰͷಈ࡞֬ೝ "1*ςετ 1)17$3Λར༻ Ϣχοτςετ w ·ͣςετڥͰҎԼΛ࣮ࢪɾྃͤͨ͞ w Ϣχοτςετ "1*ςετ w
"1*ར༻αʔϏε͔Βͷಈ࡞֬ೝ ࣄલʹຊ൪ڥͰಈ࡞֬ೝΛ࣮ࢪ αʔϏε" αʔϏε# αʔϏε$ αʔϏε% ͓͍͞Άʂ "1* ܾࡁαʔϏεӡӦଆ چܾࡁαʔϏε ৽ܾࡁαʔϏε
ࣄલҠߦʹຊ൪ڥͰಈ࡞֬ೝ w ͞Βʹຊ൪ڥͰҎԼΛ࣮ࢪɾྃͤͨ͞ w Ҡߦલʹࣄલʹ"1*ར༻αʔϏε͔Βͷಈ࡞֬ೝ w ೦ͷҝɺҠߦ࠷ऴಈ࡞֬ೝ ࣄલʹຊ൪ڥͰಈ࡞֬ೝΛ࣮ࢪ αʔϏε" αʔϏε#
αʔϏε$ αʔϏε% ͓͍͞Άʂ "1* ܾࡁαʔϏεӡӦଆ چܾࡁαʔϏε ৽ܾࡁαʔϏε
w αʔϏεଆͰͷಈ࡞֬ೝ͕࣌ؒతʹҰ൪ͷϘτϧωοΫ w ಈ࡞֬ೝΛ૬खʹؙ͛ͤͣ࠷ޙ·Ͱαϙʔτͨ͠ w 4MBDLʹઐ༻νϟϯωϧΛ༻ҙ͢Δ w ҰॹʹΤϥʔௐࠪ͢Δ w ࣭ʹର͢Δૣ͍Ϩεϙϯε
ಈ࡞֬ೝΛظؒͰྃͤ͞Δҝʹ
ࠓճఘΊͦ͏ʹͳͬͨ ग़དྷࣄͦͷ
Ҡߦ લ
w Ҡߦલʹࣄલʹຊ൪ڥͰಈ࡞֬ೝத w %ηΩϡΞΧʔυΛར༻ܾͨ͠ࡁॲཧ͕͏·͍͔͘ͳ͍ w ݪҼ৽ܾࡁαʔϏεܖ࣌ͷਃࠐΈ༰ϛε ఘΊͦ͏ʹͳͬͨग़དྷࣄ αʔϏε" αʔϏε# αʔϏε$
αʔϏε% ͓͍͞Άʂ "1* ܾࡁαʔϏεӡӦଆ چܾࡁαʔϏε ৽ܾࡁαʔϏε ❌ ⭕ ❌ ❌
͜ͷઃఆϛεʹؾ͍͙ͮͯ͢Ӧۀ୲ͷํʹి࿈བྷ w Ӧۀͷํʮ͜ͷઃఆมߋɺ௨ৗि͔͔ؒΓ·͢ʜʯ w ࣗͨͪʮ ऴΘͬͨʜԆظͩΘ͜Εʜ ʯ ఘΊͦ͏ʹͳͬͨग़དྷࣄ
ʜ࣌ؒޙ w Ӧۀͷํʮมߋؒʹ߹͏Α͏Ͷ͡ࠐΈ·ͨ͠ʂʯ w ࣗͨͪʮ ͏͓ʔʔʔʂʂʂʂ ʯ ఘΊͦ͏ʹͳͬͨग़དྷࣄ
w ͳ͔ͥʁ w ຊ൪ڥͰͷෆ۩߹ʹࣄલʹؾ͚ͮΔ w ࣗΛ࣋ͬͯҠߦΛܴ͑Δ͜ͱ͕Ͱ͖Δ ࣄલʹຊ൪ڥͰಈ࡞֬ೝΛ࣮ࢪ
w ૣظʹଧͪ߹ΘͤΛ࣮ࢪ͢Δ w ࣄલʹຊ൪ڥͰಈ࡞֬ೝΛ࣮ࢪ͓ͯ͘͠ w ສ͕ҰͷࡍͷରԠϑϩʔΛ༻ҙ͓ͯ͘͠ ܾࡁαʔϏεҠߦΛޭͤ͞Δʹʁ
ສ͕ҰͷࡍͷରԠϑϩʔΛ༻ҙ͠ ͓ͯ͘
w લ·Ͱʹͷ࡞ۀ༧ఆΛ࡞ w ࡞ۀ߲ຖʹສ͕ҰͷࡍʹͲ͏ରԠ͢Δ͔ߟ͓͑ͯ͘ w ͷ࡞ۀͷਐḿঢ়گʹԠ͍ͯ͡ΖΜͳέʔεΛ ສ͕ҰͷࡍͷରԠϑϩʔΛ༻ҙ͓ͯ͘͠
ࠓճఘΊͦ͏ʹͳͬͨ ग़དྷࣄͦͷ
Ҡߦ
Ҡߦ࣮ࢪͷεέδϡʔϧ ". ϝϯςφϯε։࢝ ". ϝϯςφϯεऴྃ چܾࡁαʔϏε ձһσʔλҠߦ ৽ܾࡁαʔϏεରԠϦϦʔε ࠷ऴಈ࡞֬ೝ ৽ܾࡁαʔϏε
Ҡߦ࣮ࢪͷεέδϡʔϧ ". ϝϯςφϯε։࢝ ". ϝϯςφϯεऴྃ αʔϏε" αʔϏε# αʔϏε$ αʔϏε% ͓͍͞Άʂ
ܾࡁαʔϏεӡӦଆ چܾࡁαʔϏε ৽ܾࡁαʔϏε چܾࡁαʔϏε ձһσʔλҠߦ ৽ܾࡁαʔϏεରԠϦϦʔε ࠷ऴಈ࡞֬ೝ ৽ܾࡁαʔϏε ձһσʔλ Ҡߦ
w ϝϯςφϯεதͷ࡞ۀॱௐʹਐΜͩ w ༧ఆ௨Γϝϯςφϯεऴྃͯ͠αʔϏε࠶։ w Ϣʔβʔͷܾࡁॲཧͳͦ͞͏ʂ Ҡߦ࣮ࢪͷεέδϡʔϧ
શ উར
ͦΜͳ;͏ʹߟ ͍͑ͯͨ࣌ظ͕ ʹ͋Γ·͠ ͨʜ
w ͓னલʹϝϯγϣϯ͕ඈΜͰ͖ͨʜ w ฦۚॲཧͰΤϥʔ͕ग़ΔΒ͍͠ w ʮ͓͔͍͠ͳʜฦۚॲཧಈ࡞֬ೝͯ͠ແ͔ͬͨͣ ͚ͨͲͳʜʯ શউར ͦΜͳ;͏ʹ SZ
w چܾࡁαʔϏεͰͷܾࡁʹର͢Δฦ͕ۚΤϥʔͱͳΔ w ࠓճچܾࡁαʔϏε্ͷܾࡁཤྺҠߦ͞Ε͍ͯͳ͍ w چܾࡁαʔϏεͷฦۚॲཧΛߟྀͰ͖͍ͯͳ͔ͬͨʜ શউར ͦΜͳ;͏ʹ SZ αʔϏε"
αʔϏε# αʔϏε$ αʔϏε% ͓͍͞Άʂ ܾࡁαʔϏεӡӦଆ چܾࡁαʔϏε ৽ܾࡁαʔϏε
Ͳ͏͢Δʁ
w ࣄલʹఆ͍ͯͨ͠શମΛϩʔϧόοΫ͢ΔϨϕϧͷෆ۩ ߹Ͱͳ͍ͱஅ w ͳͷͰچܾࡁαʔϏεͣ͞ରԠ͢Δ͜ͱΛܾஅ બΜͩߦಈ
w εςʔδϯάڥΛچܾࡁαʔϏεʹϩʔϧόοΫ w ඞཁ࠷খݶରԠ͔ͭͬͱ࣮֬ͳํ๏ w ฦۚॲཧͷܾࡁ࣌ͰϦΫΤετઌΛৼΓ͚ͨ w Ҏ߱ͷܾࡁ৽ܾࡁαʔϏε w ҎલͷܾࡁچܾࡁαʔϏε
Ұ෦ϩʔϧόοΫ͢Δ αʔϏε" αʔϏε# αʔϏε$ αʔϏε% ͓͍͞Άʂ ܾࡁαʔϏεӡӦଆ چܾࡁαʔϏε ৽ܾࡁαʔϏε ͓͍͞Άʂ εςʔδϯάڥ ˞ݱࡏ͓͍͞Άʂଆͷ ຊ൪ڥͷॲཧͰٵऩͯ͠मਖ਼ࡁΈ
ͱ͍͏ ͜ͱͰ
Ҡߦ ྃ
None
w ͳ͔ͥʁ w ϩʔϧόοΫ͢Δ͔Ͳ͏͔ͳͲͷஅج४͕ͯΔ w ͦͷ࣌ͷঢ়گʹԠͯ͡దͳஅ͕Մೳ ສ͕ҰͷࡍͷରԠϑϩʔΛ༻ҙ͓ͯ͘͠
·ͱΊ
w ૣظʹଧͪ߹ΘͤΛ࣮ࢪ͢Δ w ࣄલʹຊ൪ڥͰಈ࡞֬ೝΛ࣮ࢪ͓ͯ͘͠ w ສ͕ҰͷࡍͷରԠϑϩʔΛ༻ҙ͓ͯ͘͠ ܾࡁαʔϏεҠߦΛޭͤ͞Δʹʁ
w ҠߦΛఘΊͦ͏ʹͳͬͨͭͷग़དྷࣄ͕͋Γ·ͨ͠ w ͔͜͠͠ͷҠߦϓϩδΣΫτʹܞΘ͍༷ͬͯͨʑͳਓͨͪ ͷڠྗͷ͓͔͛ͰܾࡁαʔϏεΛҠߦͤ͞Δ͜ͱ͕ग़དྷ· ͨ͠ ·ͱΊ
܅ϖύϘͰಇ͔ͳ͍͔ʁ ࠷৽ͷ࠾༻ใΛνΣοΫˠ !QC@SFDSVJU