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
月間数千億リクエストをさばく技術 (ArchitectureNight公開用)
Search
Kurochan
June 22, 2018
Technology
6k
6
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
月間数千億リクエストをさばく技術 (ArchitectureNight公開用)
https://architecture-night.connpass.com/event/90666/
Kurochan
June 22, 2018
More Decks by Kurochan
See All by Kurochan
ABEMAのバグバウンティの取り組み
kurochan
1
1.1k
2026年の個人的テーマ: 「計算機を燃やせ🔥」
kurochan
1
180
つなぐ、届ける、変える- コンテンツ配信の最前線ト——ク
kurochan
0
170
サイバーエージェント流クラウドコスト削減施策「みんなで金塊堀太郎」
kurochan
4
3.3k
AWS Elemental MediaPackageと格闘🤼
kurochan
2
130
サイバーエージェントでのSlack活用事例 @ 2025
kurochan
5
280
15年入社者に聞く! これまでのCAのキャリアとこれから
kurochan
1
400
入門 電気通信事業者
kurochan
13
5.9k
AWS x さくらのクラウドのハイブリッドクラウドによる安価なフレッツ閉域網接続の実装
kurochan
9
6.4k
Other Decks in Technology
See All in Technology
AI開発に用いられるHPC技術について
gpuunite_official
0
120
私がブラウザを自作したくなった理由
supurazako
1
270
コーチングの奥義 何もしないテクニック
jinwatanabe
0
120
Sets in Go
ramalho
1
1.1k
20分でわかるセキュアAPI
nwiizo
2
310
その“隠したつもり”が命取り ── 自前と平文をやめて「正解」に委ねる
kuroneko13
0
130
制約理論(ToC)入門 2026版
recruitengineers
PRO
9
2.6k
AIのためのEthernet技術動向 (SerDes)
markunet
1
220
関東Kaggler会発表資料
takoi
1
260
Flutter × BLE Centralを自前Pluginで実装する設計パターン - MethodChannel / EventChannelで作る双方向ブリッジの実践 / Building Custom Flutter BLE Central Plugins: Bidirectional Bridging with Method & Event Channels
bitkey
PRO
0
120
攻撃と防御で学ぶAI時代のプロダクトセキュリティ演習
recruitengineers
PRO
9
3.1k
[ChatGPT Work LT]事務作業が苦手な人のための バックオフィスの「半」自動化
chimaki_iot
0
330
Featured
See All Featured
Design of three-dimensional binary manipulators for pick-and-place task avoiding obstacles (IECON2024)
konakalab
0
550
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
47
8.3k
The Invisible Side of Design
smashingmag
301
52k
Making the Leap to Tech Lead
cromwellryan
135
10k
Making Projects Easy
brettharned
120
6.7k
Six Lessons from altMBA
skipperchong
29
4.4k
Applied NLP in the Age of Generative AI
inesmontani
PRO
4
2.4k
Product Roadmaps are Hard
iamctodd
55
12k
Paper Plane (Part 1)
katiecoart
PRO
1
10k
Believing is Seeing
oripsolob
1
190
Mind Mapping
helmedeiros
PRO
1
320
Scaling GitHub
holman
464
140k
Transcript
݄ؒઍԯϦΫΤετΛٕ͘͞ज़ גࣜձࣾαΠόʔΤʔδΣϯτΞυςΫຊ෦%ZOBMZTU ࠇ࡚༏ଠ!LVSP@N
ࣗݾհ w ࠇ࡚༏ଠ !LVSP@N w גࣜձࣾαΠόʔΤʔδΣϯτ ΞυςΫຊ෦%ZOBMZTUόοΫΤϯυΤϯδχΞ w ৽ଔೖࣾ
w ೖࣾҎདྷ%ZOBMZTUͷೖࡳ ৴ ܭଌ ूܭ෦ͷ։ൃ ΠϯϑϥΛ୲ w ˞ࡱӨԻߘېࢭͷϖʔδʹࠨ্ʹˣͷΞΠίϯΛೖΕͯ͋Γ·͢
%ZOBMZTUͱ
Πϯλʔωοτࠂͱ
αΠόʔΤʔδΣϯτʹ͓͚ΔΞυςΫ
35#ͷ͘͠Έ w 35#3FBM5JNF#JEEJOH 441 %41T
35#ͷ͘͠Έ w 8FCϖʔδ͕ϩʔυ͞Εɺࠂλά͕ൃՐ 441 %41T
35#ͷ͘͠Έ w ใϢʔβใͱͱʹCJESFRVFTU͕͘Δ 441 %41T CJESFRVFTU
35#ͷ͘͠Έ w ೖࡳֹͱදࣔ͢ΔࠂΛܾఆ 441 %41T "% "% "% CJESFRVFTU ԁ
ԁ ԁ
35#ͷ͘͠Έ w 0QFO35#ͱ͍͏ϓϩτίϧͰೖࡳ 441 %41T "% "% "% ԁ ԁ
ԁ
35#ͷ͘͠Έ w ೖࡳֹ͕Ұ൪ߴ͍ࣄۀऀ͕উར͢Δ 441 %41T "% "% "% ԁ ԁ
ԁ XJO
35#ͷ͘͠Έ w 441ʹࠂΫϦΤΠςΟϒ͕ૹΒΕΔ 441 %41T "% "% "% ԁ ԁ
ԁ "% XJO
35#ͷ͘͠Έ w 441ܦ༝Ͱམࡳͨ͠ࣄۀऀͷࠂ͕ల։͞ΕΔ 441 %41T "% "% "% ԁ ԁ
ԁ "% XJO "%
35#ͷ͘͠Έ w ͜ΕΛߴʹ܁Γฦ͢ 441 %41T "% "% "% ԁ ԁ
ԁ "% XJO "% औҾNTҎʹྃ͠ͳ͚ΕͳΒͳ͍
%ZOBMZTUͱ w %ZOBNJD3FUBSHFUJOHGPS(BNFT w εϚϗήʔϜ͚ࠂ৴ϓϥοτϑΥʔϜ w τοϓηʔϧε!ຊͷεϚϗήʔϜͷதͰߴ͍γΣΞ w ຊɺΞϝϦΧΛؚΉΧࠃʹ৴த w
Ϣʔβ͝ͱʹ࠷దԽͨ͠ࠂΛ৴ IUUQXXXEZOBMZTUJP
ࠂΫϦΤΠςΟϒྫ ࡱӨԻߘېࢭ
݄ؒઍԯϦΫΤετΛٕ͘͞ज़
w "MM"84 w ओཁར༻ίϯϙʔωϯτ %ZOBMZTUͷΞʔΩςΫνϟ Amazon EC2 Amazon ECR Amazon
ECS AWS Lambda Elastic Load Balancing Amazon S3 Amazon RDS Amazon DynamoDB Amazon ElastiCache Amazon Redshift Amazon CloudFront Amazon Route 53 AWS Direct Connect Amazon VPC Amazon CloudWatch AWS OpsWorks AWS Trusted Advisor IAM AWS Certificate Manager Amazon Athena Amazon EMR Amazon Kinesis AWS Data Pipeline Amazon SQS Amazon SNS Amazon SES Amazon WorkMail
%ZOBMZTUͷΞʔΩςΫνϟ w "MM"84 w BQOPSUIFBTU VTFBTUʹల։ w ॳΑΓάϩʔόϧͳϓϩμΫτΛࢦ͍ͯͨ͠ͷͰ"84Λબ w ݸͷΞϓϦέʔγϣϯίϯϙʔωϯτͰߏ
%ZOBMZTUͷΞʔΩςΫνϟ ུ֓ BQOPSUIFBTU VTFBTU ೖࡳ৴ܥ ೖࡳ৴ܥ ܭଌܥ DBDIFDMVTUFS ूܭܥ DSPTTSFHJPOSFQMJDBUJPO
DSPTTSFHJPOSFQMJDBUJPO DSPTTSFHJPOSFQMJDBUJPO ཧը໘ DBDIFDMVTUFS όονܥ όονܥ
τϥϑΟοΫ֓گ ຊͷೖࡳϦΫΤετඵ ΞϝϦΧͷೖࡳϦΫΤετඵ ຊΞϝϦΧͷϨεϙϯελΠϜ NTFD
ͪͳΈʹ ࡱӨԻߘېࢭ ͋ΔͷτϥϑΟοΫ
ͪͳΈʹ
ΠϯλʔωοττϥϑΟοΫ͍͍ͩͨ͜Μͳײ͡ IUUQXXXNGFFEDPKQTFSWJDFUSB⒏DIUNM
τϥϑΟοΫ֓گ w ͱ͋Δϲ݄ؒͷCJEϦΫΤετͷ߹ܭ
w DYMBSHF $( Y ϐʔΫ 64 +1 w DΠϯελϯε˕
େྔͷτϥϑΟοΫΛड͚ΔͨΊʹ DBDIF 3%# TMBWF DBDIF 3%# TMBWF BQOPSUIFBTUB BQOPSUIFBTUD ,74 3%# NBTUFS BQOPSUIFBTU
4DBMBͱ͍͏બ w %ZOBMZTUͰ΄΅શͯͷΞϓϦέʔγϣϯʹ4DBMBΛ࠾༻ w ΠϯλϏϡʔهࣄ͋Γ·͢ http://gihyo.jp/dev/serial/01/cyberagent/0063
4DBMBͱ͍͏બ w 4DBMBΛબͨ͠ཧ༝ w νϟϨϯδ ࠓͱͳͬͯී௨ʁ w Մಡੑɺϝϯςφϯεੑ͕ߴ͍ w
ϋΠύϑΥʔϚϯε w +BWBͷࢿ࢈͕͑Δ w ΞυςΫελδΦ4DBMBͷݟͷմ X
4DBMBʹΑΔฒྻॲཧ w ฒྻॲཧ͕ॻ͖͍͢ w 'VUVSFͱ͍͏֓೦
4DBMBʹΑΔฒྻॲཧ w ฒྻॲཧ͕ॻ͖͍͢ w 'VUVSFͱ͍͏֓೦ w ྫ3%#͔ΒෳͷςʔϒϧΛҾ͖ͭͭɺ%ZOBNP%#Ҿ͘ ಉ࣌ʹ͍߹Θͤͯ ฒྻʹϨεϙϯεΛड͚Δ NT
NT NT ྻॲཧNT ฒྻॲཧNT
ϩάશͯ,JOFTJTʹྲྀ͢ w ೖࡳܭଌͷϩάશͯ,JOFTJT4USFBNTʹྲྀ͢ w 8"1αʔόϨεϙϯεΛฦ͢͜ͱ͚ͩʹूத w ֦ுੑোੑͷ্ %#VQEBUFDPOTVNFS MPHBSDIJWFDPOTVNFS VQEBUF
BSDIJWF ,JOFTJT4USFBNT DPOTVNF QSPEVDFMPHT BQQTFSWFS %ZOBNP%# 4 1SPEVDFS 4USFBN $POTVNFS
1SPEVDFS w ΞϓϦέʔγϣϯαʔό͕ు͍֤ͨछϩάΛ,JOFTJTʹ͛Δ ,JOFTJT4USFBNT qVFOUQMVHJOLJOFTJT BQQTFSWFS 1SPEVDFS 4USFBN
,JOFTJT1SPEVDFS-JCSBSZ w ,1-ͰτϥϑΟοΫઅ w ,JOFTJTͷ੍γϟʔυ͋ͨΓ SFDPSE165TFDPS.#T w ,#ͷϩάΛେྔʹసૹ͢Δʹ͍ͬͨͳ͍ w ,1-Ͱ,JOFTJTϨίʔυʹෳϝοηʔδΛ٧ΊࠐΉ
QSPUPDPMCV⒎FST https://speakerdeck.com/kanny/logging-architecture-at-cookpad
$POTVNFS w ,JOFTJT͔ΒϨίʔυΛऔΓग़͢ w DPOTVNFSΛ૿ͤεέʔϧΞτՄೳ ,JOFTJT4USFBN BQQTFSWFS $POTVNFS 4USFBN %ZOBNP%#
,JOFTJT$POTVNFS-JCSBSZ w ,1-Ͱूͨ͠ϨίʔυΛల։ͯ͘͠ΕΔ w XPSLFSຖͷ୲γϟʔυͷௐఀػೳ %ZOBNP%#Λར༻ ,JOFTJT4IBSET BQQTFSWFS $POTVNFS 4USFBN
%ZOBNP%#
,JOFTJT$POTVNFS-JCSBSZ w ,1-Ͱूͨ͠ϨίʔυΛల։ͯ͘͠ΕΔ w XPSLFSຖͷ୲γϟʔυͷௐఀػೳ %ZOBNP%#Λར༻ ,JOFTJT4IBSET BQQTFSWFS $POTVNFS 4USFBN
%ZOBNP%# োൃੜ
,JOFTJT$POTVNFS-JCSBSZ w ,1-Ͱूͨ͠ϨίʔυΛల։ͯ͘͠ΕΔ w XPSLFSຖͷ୲γϟʔυͷௐఀػೳ %ZOBNP%#Λར༻ ,JOFTJT4IBSET BQQTFSWFS $POTVNFS 4USFBN
%ZOBNP%# ࣗಈ࠶ׂΓͯ
Ϣʔβσʔλͷѻ͍ w ࠂ༻*% *%'" "EWFSUJTJOH*% ͱϢʔβσʔλͷΈ߹Θͤ w ྫ࠷ޙʹϩάΠϯͨ࣌͠ˠະϩάΠϯظ͕ؒΘ͔Δ w ࠂೖࡳ࣌ʹେྔʹSFBE͕͞ΕΔͷͰਫฏεέʔϧͯ͠ཉ͍͠
w ϨίʔυඦԯϨίʔυ w αϯϓϧςʔϒϧ ؆ུԽ %&7*$&@*% "%7&35*4&3@*% %&7*$&@5:1& -"45@-0(*/@"5 015065@"5 ʜʜ %&7*$&@ "OESPJE ʜʜ %&7*$&@ "OESPJE ʜʜ %&7*$&@ J04 ʜʜ %&7*$&@ "OESPJE ʜʜ
Ϣʔβσʔλͷѻ͍ w ,74ͱͯ͠%ZOBNP%#Λ࠾༻ w )BTI,FZͱ3BOHF,FZΛΈ߹ΘͤΔ w )BTI,FZͰҾ͚3BOHF,FZͰιʔτ͞ΕͨෳϨίʔυ͕ฦΔ %&7*$&@*% "%7&35*4&3@*% %&7*$&@5:1&
-"45@-0(*/@"5 015065@"5 ʜʜ %&7*$&@ "OESPJE ʜʜ %&7*$&@ "OESPJE ʜʜ %&7*$&@ J04 ʜʜ %&7*$&@ "OESPJE ʜʜ )BTI,FZ 3BOHF,FZ
ϗοτύʔςΟγϣϯ w ಛఆͷύʔςΟγϣϯʹΞΫηε͕ภΓɺύϑΥʔϚϯε͕ग़ͳ͍
ϗοτύʔςΟγϣϯ w ,74ͷ໋॓ w ಛఆͷύʔςΟγϣϯʹ3FBE8SJUF͕ภΔͱੑೳ͕ग़ͳ͍ w ϗοτσʔλͱίʔϧυσʔλΛࠞͥͳ͍ w ৽͍͠σʔλΞΫηε͞Ε͍͢ ݹ͍σʔλΞΫηε͞Εʹ͍͘
w ରࡦ w σʔλ͕ొ͞Εͨ࣌ظ͝ͱʹςʔϒϧΛ͚Δ w ҰఆظؒΞΫηε͞Εͳ͍σʔλআ͢Δ OPEF OPEF OPEF ৽͍͠σʔλ ݹ͍σʔλ ଟ͍ গͳ͍ ී௨ ΞΫηεྔ
%ZOBNP%#ͷΩϟογϡ w Ωϟογϡͷಋೖ w ϨΠςϯγͷݮ w %ZOBNP%#3FBE$BQBDJUZͷݮ w ϗοτύʔςΟγϣϯͷ؇ w
&MBTUJ$BDIF NFNDBDIFE Λ࠾༻ w γϯϓϧɾߴ w ϚϧνεϨουͰಈ͘ w SܥΠϯελϯεωοτϫʔΫଳҬ͕(CQT·ͰόʔετՄೳ w IUUQTEFWDMBTTNFUIPEKQDMPVEBXTFDSOFUXPSLJOH %ZOBNP%# NFNDBDIFE BQQ
%ZOBNP%#ͷΩϟογϡ w Ωϟογϡظ͕͍ؒͱϢʔβͷঢ়ଶมԽ͕͙͢ʹө͞Εͳ͍ w Ϣʔβͷঢ়ଶΛར༻ͨ͠ࠂ͕ϦͳͷͰଈ࣌ө͍ͤͨ͞ w %ZOBNP%#4USFBNT -BNCEB'VODUJPOͰΩϟογϡͷআ w %ZOBNP%#"DDFMFSBUPSΫΤϦΩϟογϡࣗಈߋ৽͞Εͳ͍
w ݱঢ়ࣗલͰ࣮͢Δ͔͠ͳ͍ %ZOBNP%# 61%"5& %ZOBNP%#4USFBNT %&-&5&
w ϦΫΤετΛड͚͚ͨͩͰμϝɺूܭ͕ඞཁ w ϩάͷྔ5#EBZ w "QBDIF4QBSLPO"NB[PO&.3 w ΫϥελίϯϐϡʔςΟϯάϑϨʔϜϫʔΫ w ࢄڞ༗ϝϞϦϞσϧ
w ϊʔυΛ૿͢͜ͱͰεέʔϧ͢Δ w 4QBSL.-JCͱ͍͏ػցֶशϥΠϒϥϦ &.3$MVTUFS .BTUFS 4MBWF 4MBWF 4MBWF 4MBWF ϩάूܭ
ϩάूܭ w "QBDIF4QBSLPO&.3 w ෳࡶͳूܭॲཧ͕ॻ͚Δ w ྫ୯७ͳ࣌ؒYࠂओͷ ΫϦοΫूܭ 42-Ͱॻ͍ͨ߹ 4QBSLͰॻ͍ͨ߹
ϋΠύϑΥʔϚϯεͰ৴པੑͷඞཁͳ γεςϜΛӡ༻͢ΔͨΊʹ
ͳͥ৴པੑ͕ٻΊΒΕΔͷ͔ w ҰൠతͳαʔϏε ϝσΟΞ ήʔϜ w αʔϏεఏڙ͕Ͱ͖ͳ͍ˠϢʔβͷ ऩӹԼ w
ࠂ৴αʔϏε w ࠂ͕৴Ͱ͖ͳ͍ˠػձଛࣦ ࠂओͷ ऩӹԼ w ࠂ͕৴͞Εͳͯ͘Ϣʔβʹରͯ͠Өڹ͕ͳ͍ %ZOBMZTU Ϣʔβ ࠂओ ൃ ৴
ͳͥ৴པੑ͕ٻΊΒΕΔͷ͔ w αʔϏε͕͠ച্ͷن͕͕͖͋ͬͯͨˠച্ͷॏཁมΘΒͳ͍ w ച্ສԁͰ࣌ؒ৴ఀࢭສԁͷଛࣦ w ച্ ສԁͰ࣌ؒ৴ఀࢭ ສԁͷଛࣦ w
γεςϜنେ͖͘ͳΔͱ w োͷӨڹେ͖͘ͳ͖ͬͯͨ w ҰํίετΧοτͷҖྗେ͖͘ͳ͖ͬͯͨ
ߴ͍৴པੑઃܭ͕શͯ w ୯ҰোΛ࡞Βͳ͍ w ΫϥυΛͬͯΔͳΒΫϥυωΠςΟϒͳϕετϓϥΫςΟεʹدͤΔ w ΞϓϦͰ͖Δ͚ͩεςʔτϨεʹ w εςʔτΛ࣋ͭ෦ΛϚωʔδυαʔϏεʹدͤΔ w
ιϦϡʔγϣϯΞʔΩςΫτʹ૬ஊ͢Δ w ͱ͍͑ෆଌͷࣄଶى͜Δʜ w ෮چ؇ͷͨΊͷखஈ༻ҙ͢Δ͖
ࢹ w %ZOBMZTUͰࢹʹ%BUBEPHΛར༻ w l%ZOBMZTU%BUBEPHzͰݕࡧ
ࢹ
ࢹ w ࠂओ͝ͱͷ৴ϝτϦΫε
ϦΫΤετ͕٧·ͬͯ͠·ͬͨ࣌ w Ұ࣌తʹϨεϙϯε͕٧·Δͱʜ w αʔόʹϦΫΤετ͕ཷ·Δ w ಉ࣌ॲཧϦΫΤετ͕രൃ͢Δ w εϨουϓʔϧΛաʹ͏ w
Ϩεϙϯεͷେ෯ѱԽ w ॲཧΛ࢝Ί͔ͯΒҰఆ࣌ؒܦաͨ͠ॲཧΛதஅͯ͠ೖࡳ͠ͳ͍ w ೖࡳ͠ͳ͍)551 /P$POUFOU Λฦ͢ w 4DBMBͳΒͦ͏͍͏ॲཧॻ͖͍͢ʂ
ύϑΥʔϚϯεௐࠪ w :PVS,JU ༻+BWBϓϩϑΝΠϥ ΛѪ༻
ࠓޙ
ࠓޙ͍͖͍ͬͯͨ͜ͱ w 4DIFEVMFE4DBMJOH"VUP4DBMJOH w "LLB)551 w "LLB4USFBNΛར༻ͨ͠ॲཧ #BDL1SFTTVSFͱ͔ w
Ωϟογϡ %#ͷ"VUP4DBMJOH w ϏϧυϦϦʔεͷߴԽ w &&ςετͷಋೖ w ͳͲͳͲʜ
͋Γ͕ͱ͏͍͟͝·ͨ͠