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
Akihito Nakano
March 09, 2017
Programming
1
3.9k
サーキットブレーカー 〜 有料契約店舗数 国内 No.1 ECサービスに神を宿す 〜 / pepabo_ec_tech_mtg01
2017/03/09 第1回 EC事業部 Tech MTG
Akihito Nakano
March 09, 2017
Tweet
Share
More Decks by Akihito Nakano
See All by Akihito Nakano
OpenAPI Generator Meetup #1
akihito_nakano
1
1.2k
Libraの現状と技術面をざっくりと / astudy20191114
akihito_nakano
4
1.1k
カート刷新プロジェクトにおけるOpenAPIを活用したコード自動生成の今と明日 / astudy20190419
akihito_nakano
2
570
平静を保ち、コードを生成せよ 〜 OpenAPI Generator誕生の背景と軌跡 〜 / gunmaweb34
akihito_nakano
24
54k
プライベートAPIのクライアントをいい感じにしたい / pepabo_ec_tech_mtg02
akihito_nakano
0
1.7k
並行・並列処理のテストは難しい
akihito_nakano
2
4.3k
並列処理で消耗しているかたへ - Snidel のご紹介 -
akihito_nakano
4
3.4k
Other Decks in Programming
See All in Programming
광고 소재 심사 과정에 AI를 도입하여 광고 서비스 생산성 향상시키기
kakao
PRO
0
170
AWS Lambdaから始まった Serverlessの「熱」とキャリアパス / It started with AWS Lambda Serverless “fever” and career path
seike460
PRO
1
250
NSOutlineView何もわからん:( 前編 / I Don't Understand About NSOutlineView :( Pt. 1
usagimaru
0
330
2024/11/8 関西Kaggler会 2024 #3 / Kaggle Kernel で Gemma 2 × vLLM を動かす。
kohecchi
5
910
Jakarta Concurrencyによる並行処理プログラミングの始め方 (JJUG CCC 2024 Fall)
tnagao7
1
290
ふかぼれ!CSSセレクターモジュール / Fukabore! CSS Selectors Module
petamoriken
0
150
CSC509 Lecture 11
javiergs
PRO
0
180
Quine, Polyglot, 良いコード
qnighy
4
640
C++でシェーダを書く
fadis
6
4.1k
レガシーシステムにどう立ち向かうか 複雑さと理想と現実/vs-legacy
suzukihoge
14
2.2k
役立つログに取り組もう
irof
28
9.6k
OSSで起業してもうすぐ10年 / Open Source Conference 2024 Shimane
furukawayasuto
0
100
Featured
See All Featured
Fireside Chat
paigeccino
34
3k
Git: the NoSQL Database
bkeepers
PRO
427
64k
5 minutes of I Can Smell Your CMS
philhawksworth
202
19k
It's Worth the Effort
3n
183
27k
Building Better People: How to give real-time feedback that sticks.
wjessup
364
19k
Keith and Marios Guide to Fast Websites
keithpitt
409
22k
GitHub's CSS Performance
jonrohan
1030
460k
The Straight Up "How To Draw Better" Workshop
denniskardys
232
140k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
38
1.8k
GraphQLの誤解/rethinking-graphql
sonatard
67
10k
Build your cross-platform service in a week with App Engine
jlugia
229
18k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
26
1.4k
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 Λ࠾༻͢Δ͖ཧ༝Λڞ༗Ͱ͖ͯΔ͜ͱ