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
サーキットブレーカー 〜 有料契約店舗数 国内 No.1 ECサービスに神を宿す 〜 / pe...
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Akihito Nakano
March 09, 2017
Programming
4.4k
1
Share
サーキットブレーカー 〜 有料契約店舗数 国内 No.1 ECサービスに神を宿す 〜 / pepabo_ec_tech_mtg01
2017/03/09 第1回 EC事業部 Tech MTG
Akihito Nakano
March 09, 2017
More Decks by Akihito Nakano
See All by Akihito Nakano
OpenAPI Generator Meetup #1
akihito_nakano
1
1.4k
Libraの現状と技術面をざっくりと / astudy20191114
akihito_nakano
4
1.2k
カート刷新プロジェクトにおけるOpenAPIを活用したコード自動生成の今と明日 / astudy20190419
akihito_nakano
2
660
平静を保ち、コードを生成せよ 〜 OpenAPI Generator誕生の背景と軌跡 〜 / gunmaweb34
akihito_nakano
25
57k
プライベートAPIのクライアントをいい感じにしたい / pepabo_ec_tech_mtg02
akihito_nakano
0
1.9k
並行・並列処理のテストは難しい
akihito_nakano
2
4.9k
並列処理で消耗しているかたへ - Snidel のご紹介 -
akihito_nakano
4
3.6k
Other Decks in Programming
See All in Programming
「接続」—パフォーマンスチューニングの最後の一手 〜点と点を結ぶ、その一瞬のために〜
kentaroutakeda
5
2.4k
AWS re:Invent 2025の少し振り返り + DevOps AgentとBacklogを連携させてみた
satoshi256kbyte
2
140
Kubernetes上でAgentを動かすための最新動向と押さえるべき概念まとめ
sotamaki0421
1
370
「速くなった気がする」をデータで疑う
senleaf24
0
130
PHP 7.4でもOpenTelemetryゼロコード計装がしたい! / PHPerKaigi 2026
arthur1
1
490
条件判定に名前、つけてますか? #phperkaigi #c
77web
2
940
Codex CLIのSubagentsによる並列API実装 / Parallel API Implementation with Codex CLI Subagents
takatty
2
820
20260320登壇資料
pharct
0
160
アーキテクチャモダナイゼーションとは何か
nwiizo
8
1.7k
それはエンジニアリングの糧である:AI開発のためにAIのOSSを開発する現場より / It serves as fuel for engineering: insights from the field of developing open-source AI for AI development.
nrslib
1
820
Kubernetesでセルフホストが簡単なNewSQLを求めて / Seeking a NewSQL Database That's Simple to Self-Host on Kubernetes
nnaka2992
0
200
[PHPerKaigi 2026]PHPerKaigi2025の企画CodeGolfが最高すぎて社内で内製して半年運営して得た内製と運営の知見
ikezoemakoto
0
320
Featured
See All Featured
Ten Tips & Tricks for a 🌱 transition
stuffmc
0
95
Lightning Talk: Beautiful Slides for Beginners
inesmontani
PRO
1
500
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
62
53k
We Are The Robots
honzajavorek
0
210
How to Align SEO within the Product Triangle To Get Buy-In & Support - #RIMC
aleyda
1
1.5k
Unsuck your backbone
ammeep
672
58k
The State of eCommerce SEO: How to Win in Today's Products SERPs - #SEOweek
aleyda
2
10k
How to Build an AI Search Optimization Roadmap - Criteria and Steps to Take #SEOIRL
aleyda
1
2k
Thoughts on Productivity
jonyablonski
76
5.1k
The Curious Case for Waylosing
cassininazir
0
290
How to make the Groovebox
asonas
2
2.1k
Mobile First: as difficult as doing things right
swwweet
225
10k
Transcript
தڿਓ(.01&1"#0JOD ୈճ&$ࣄۀ෦5FDI.5( αʔΩοτϒϨʔΧʔ ʙ༗ྉܖళฮࠃ/P&$αʔϏεʹਆΛ॓͢ʙ
8&#ΞϓϦέʔγϣϯΤϯδχΞ &$ࣄۀ෦Χϥʔϛʔγϣοϓάϧʔϓ தڿਓ ͖͋ͬʔ !/","/0@"LJIJUP ಛ߈ୂνʔϜ IUUQTBDLJOUPTIHJUIVCJP
ಛ߈ୂ νʔϜ
None
܅ಛ߈ୂνʔϜͰಇ͔ͳ͍͔ʁ ࠷৽ใΛνΣοΫˠ DPMPSNF@TVJDJEFTRVBE
Χϥʔϛʔγϣοϓ"1*Λத৺ʹͨ͠ܗଶʹ γϑτ͍ͯ͘͠ ΧϥʔϛʔγϣοϓAPIʹڧ͘ґଘ͢Δ ˣ
"1*Λத৺ʹ༷ͨ͠ࢠ
"1*ͷෛՙ͕ߴ·Δ
"1*ʹґଘ͢ΔαϒγεςϜͷෛՙߴ·Δ
Χεέʔυো IUUQEFWFMPQFSTMJOFDPSQDPNCMPHKB Q ࢄαʔϏεڥͷ$JSDVJU#SFBLFSͷద༻-*/&&OHJOFFST`#MPH IUUQTFOXJLJQFEJBPSHXJLJ$BTDBEJOH@GBJMVSF $BTDBEJOHGBJMVSF8JLJQFEJB
αʔΩοτϒϨʔΧʔͰোͷ࿈Λ͙
͜ͷൃදͷΰʔϧ wαʔΩοτϒϨʔΧʔͷඞཁੑΛڞ༗Ͱ͖ͯΔ͜ͱ wαʔΩοτϒϨʔΧʔͷΈΛڞ༗Ͱ͖ͯΔ͜ͱ w(anesha Λ࠾༻͢Δ͖ཧ༝Λڞ༗Ͱ͖ͯΔ͜ͱ
αʔΩοτϒϨʔΧʔͱ IUUQTKBXJLJQFEJBPSHXJLJαʔΩοτϒϨʔΧʔ੍ גࣜࢢઌऔҾʹ͓͍ͯՁ͕֨ҰఆҎ্ͷมಈΛىͨ͜͠߹ʹɺ ڧ੍తʹऔҾΛࢭΊΔͳͲͷાஔΛͱΔ੍Ͱ͋Δɻ ిྲྀ͕ྲྀΕա͗ͨ࣌ʹɺൃͳͲΛ৯͍ࢭΊΔిݯΛམͱ͢ిؾճ࿏ͷःஅثʢαʔΩοτ ϒϨʔΧʔʣͱࣅ͍ͯΔ੍Ͱ͋ΔͨΊɺ͜ͷΑ͏ʹݺΕΔ IUUQTKBXJLJQFEJBPSHXJLJःஅث ःஅثʢ͠ΌͩΜ͖ɺӳදهɿ$JSDVJU#SFBLFSʣɺిྗճ࿏ɾిྗػثͷਖ਼ৗಈ࡞࣌ͷෛՙిྲྀΛ ։ด͢Δͱͱʹɺอޢܧిثͱ࿈ܞͯ͠ࣄނిྲྀʢಛʹབྷࣄނిྲྀʣͳͲΛःஅ͢Δ͜ͱʹΑΓ ෛՙଆͷઃඋΛอޢ͠ɺ্ྲྀଆͷࣄނٴΛࢭ͢Δ։ดثͰ͋Δɻ
IUUQTXXXQIPUPBDDPNNBJOEFUBJM
αʔΩοτϒϨʔΧʔͱ
αʔΩοτϒϨʔΧʔͱ ϑΣΠϧϑΝετ
αʔΩοτϒϨʔΧʔͱ $JSDVJU#SFBLFS IUUQTNBSUJOGPXMFSDPNCMJLJ$JSDVJU#SFBLFSIUNM .BLJOHUIF/FUqJY"1*.PSF3FTJMJFOU IUUQUFDICMPHOFUqJYDPNNBLJOHOFUqJYBQJNPSFSFTJMJFOUIUNM ϒϩά ຊ
αʔΩοτϒϨʔΧʔͱ IUUQTNBSUJOGPXMFSDPNCMJLJ$JSDVJU#SFBLFSIUNM w αʔΩοτϒϨʔΧʔ͕ϦϞʔτίʔϧΛࢹ͢Δ w ࣦഊ͕ᮢʹୡͨ͠Β࡞ಈ͢Δ w Ҏ߱αʔΩοτϒϨʔΧʔ͕ΤϥʔΛฦ͢
αʔΩοτϒϨʔΧʔͱ IUUQTNBSUJOGPXMFSDPNCMJLJ$JSDVJU#SFBLFSIUNM w ͭͷঢ়ଶ w $MPTFE w 0QFO w )BMG0QFO
αʔΩοτϒϨʔΧʔͷ࣮ wIUUQTHJUIVCDPN/FUqJY)ZTUSJY wIUUQTHJUIVCDPNMJOFBSNFSJB wIUUQTHJUIVCDPNDPPLQBEFYQFEJUPS wIUUQTHJUIVCDPNFKTNPOUBSUVSQIQDJSDVJUCSFBLFS
αʔΩοτϒϨʔΧʔͷ؊ w ޭʗࣦഊΛΧϯτ w Τϥʔ w Τϥʔ w ͭͷঢ়ଶ w
$MPTFE 0QFO )BMG0QFO w োͷݕग़ʗ෮چͷஅΛγϯϓϧʹݡ͘ w αʔΩοτϒϨʔΧʔ͕ϘτϧωοΫʹͳͬͯ͠·ͬͨΒຊస
(BOFTIB IUUQTHJUIVCDPNBDLJOUPTIHBOFTIB w (BOFTIB Ψωʔγϟ w ώϯυΡʔڭͷਆ༷ w 1)1
w Τϥʔ
(BOFTIB
(BOFTIB $ganesha = Ackintosh\Ganesha\Builder::build([ ‘failureRate’ => 50, ‘minumumRequests’ => 100,
]); if ($ganesha->isAvailable(‘serviceName’)) { try { Api::request(); $ganesha->success(‘serviceName’); } catch (Api\ServiceUnavailableException $e) { $ganesha->failure(‘serviceName’); } }
σϞ
σϞ IUUQTHJUIVCDPNBDLJOUPTIHBOFTIBUSFFNBTUFSFYBNQMFT σϞͰͬͨεΫϦϓτ
(BOFTIB w͍ͭ࡞ಈͨ͠ͷ͔ ऩଋͨ͠ͷ͔ Ѳ͍ͨ͠ wҙͷॲཧΛϑοΫͰ͖ΔͷͰϩάʹు͘͜ͱͰ͖Δ w(BOFTIB͕ར༻͢ΔετϨʔδͰো͕ى͖ͨΒʁ wԿ͠ͳ͍ɻϦΫΤετΛڐՄ͚ͭͮ͠Δɻ ϑΣΠϧαΠϨϯτ wҙͷॲཧΛετϨʔδোʹϑοΫͰ͖ΔͷͰϩάʹు͘͜ͱͰ͖Δ
wͦͷଞͷΞϐʔϧϙΠϯτ wϓϥΨϒϧͳΞμϓλʔ w૾ͷΩϟϥΫλʔ͕1)1ʹ߹ͬͯΔ w໊લ͕ྑ͍ wਆ༷
༗ྉܖళฮࠃ/P&$αʔϏε ʹ ਆΛ॓͢
͜ͷൃදͷΰʔϧ wαʔΩοτϒϨʔΧʔͷඞཁੑΛڞ༗Ͱ͖ͯΔ͜ͱ wαʔΩοτϒϨʔΧʔͷΈΛڞ༗Ͱ͖ͯΔ͜ͱ w(anesha Λ࠾༻͢Δ͖ཧ༝Λڞ༗Ͱ͖ͯΔ͜ͱ