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
大規模Webサービス入門 15回目 / Introduction to large scale...
Search
muttan
August 31, 2017
Technology
0
150
大規模Webサービス入門 15回目 / Introduction to large scale web service 15
muttan
August 31, 2017
Tweet
Share
More Decks by muttan
See All by muttan
さわやか待ち時間LINE botを作った話 / Sawayaka LINE bot
bath_poo_
0
110
コンテナ開発入門 1回目/Introduction to Container Development 1
bath_poo_
0
170
ISUCONってなんだ / What is ISUCON
bath_poo_
0
360
Web技術の基本 8回目 / Introduction to Web technologies 8th class
bath_poo_
0
190
Web技術の基本 7回目 / Introduction to Web technologies 7th class
bath_poo_
0
160
Web技術の基本 6回目 / Introduction to Web technologies 6th class
bath_poo_
1
260
Web技術の基本 5回目 / Introduction to Web technologies 5th class
bath_poo_
0
140
Web技術の基本 4回目 / Introduction to Web technologies 4th class
bath_poo_
0
220
Web技術の基本 3回目 / Introduction to Web technologies 3rd class
bath_poo_
0
250
Other Decks in Technology
See All in Technology
デザインとエンジニアリングの架け橋を目指す OPTiMのデザインシステム「nucleus」の軌跡と広げ方
optim
0
120
20251027_findyさん_音声エージェントLT
almondo_event
2
480
What's new in OpenShift 4.20
redhatlivestreaming
0
330
Retrospectiveを振り返ろう
nakasho
0
130
AIプロダクトのプロンプト実践テクニック / Practical Techniques for AI Product Prompts
saka2jp
0
120
知覚とデザイン
rinchoku
1
620
だいたい分かった気になる 『SREの知識地図』 / introduction-to-sre-knowledge-map-book
katsuhisa91
PRO
3
1.5k
クラウドとリアルの融合により、製造業はどう変わるのか?〜クラスメソッドの製造業への取組と共に〜
hamadakoji
0
450
OPENLOGI Company Profile for engineer
hr01
1
46k
Oracle Base Database Service 技術詳細
oracle4engineer
PRO
14
82k
GraphRAG グラフDBを使ったLLM生成(自作漫画DBを用いた具体例を用いて)
seaturt1e
1
160
オブザーバビリティと育てた ID管理・認証認可基盤の歩み / The Journey of an ID Management, Authentication, and Authorization Platform Nurtured with Observability
kaminashi
1
1.1k
Featured
See All Featured
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
16k
Git: the NoSQL Database
bkeepers
PRO
431
66k
Code Reviewing Like a Champion
maltzj
526
40k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.5k
How GitHub (no longer) Works
holman
315
140k
The Straight Up "How To Draw Better" Workshop
denniskardys
238
140k
Mobile First: as difficult as doing things right
swwweet
225
10k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
46
7.7k
Scaling GitHub
holman
463
140k
Why Our Code Smells
bkeepers
PRO
340
57k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
9.7k
GraphQLの誤解/rethinking-graphql
sonatard
73
11k
Transcript
େنαʔϏεٕज़ೖ ୈ15ճ ISUCONରࡦษڧձ 2017/8/31
ୈ15ճ WebαʔϏεͱωοτϫʔΫ - ωοτϫʔΫͰݟ͑ͯ͘ΔαʔϏεͷ -
1Gbps͑, 500ϗετ͑, ଠฏ༸͑ • 15ճωοτϫʔΫʹؔ͢Δ • ࣍ͷΑ͏ͳ߹, ߏΛߟ͑͞ͳ͍ͱ͍͚ͳ͍ ‣ τϥϑΟοΫ͕1GbpsΛ͑Δ
‣ ಉ͡αϒωοτͰϗετ͕500Λ͍͑ͯΔ ‣ ଠฏ༸͑ͷτϥϑΟοΫ͕ൃੜ͢ΔͱϨΠςϯγ͕…
Lesson 38 ωοτϫʔΫͷذ
αʔϏεͷͱ ωοτϫʔΫͷذ
ωοτϫʔΫͷذ • τϥϑΟοΫྔ͕গͳ͚Ε, ωοτϫʔΫߏ ʹ͍ͭͯਂ͘ߟ͑Δඞཁͳ͍. • αʔϏε͕͢ΔʹͭΕ, ωοτϫʔΫͷ ذΛ͓ͬͯ͘ඞཁ͕͋Δ.
ωοτϫʔΫͷذ • 1Gbpsʢ300kpps͑ʣpps : packet per second → PCϧʔλͷݶք •
500ϗετ͑ ˠ 1αϒωοτͷݶք • άϩʔόϧ͑ ˠ 1σʔληϯλʔͷݶք
1Gbpsͷݶք - PCϧʔλͷݶք -
1Gbpsͷݶք • 1Gbps, ਖ਼͘͠30kbpsͷݶք ‣ ppspacket per secͰ͋Γ, ύέοτॲཧೳྗΛද͢ .
• ฏۉతͳLinuxΧʔωϧͰ, ͓Αͦ300kpps(30ສpps)͕ ݶքͰ͋Δ. ‣ ͜ͷ࣌ͷฏۉύέοτ͕300byteͩͱ, ͓Αͦ1Gbps
1Gbpsͷݶք • ΪΨϏοτΠʔαωοτͰ1Gbps͕ݶքͰ ͋Δ͠, Χʔωϧతʹ30kppsఔ͕ݶքͰ ͋Δ͜ͱ͕͔Δ. ‣ Ͳ͏ͨ͠Β͍͍ͷͩΖ͏͔ʁ
1Gbpsͷݶք • ରࡦͱͯ͠2ͭߟ͑ΒΕΔ. 1. PCϧʔλΛෳฒΔ. → ശϧʔλʹൺΔͱ҆Ձ 2. ശϧʔλ(Ciscoͷͱ͔)Λಋೖ͢Δ. →
ඦສఔ͢Δ
500ϗετͷݶք - 1αϒωοτ, ARPςʔϒϧ·ΘΓͰͷݶք -
500ϗετͷݶք • 500ϗετΛ͑ͯ͘Δͱ, εΠονͷARPςʔϒϧ ·ΘΓͰݶք͕དྷΔ. ‣ ARPIPΞυϨε͔ΒMACΞυϨεΛٻΊΔϓϩ τίϧ. ‣ ARPςʔϒϧ,
IPΞυϨεͱMACΞυϨεͷରԠ ؔදͰ͋Δ.
500ϗετͷݶք • ֤εΠον, ARPςʔϒϧΛ͍࣋ͬͯΔ. • ARPςʔϒϧͷΤϯτϦͷݶք900લޙ ‣ ARPςʔϒϧͷΤϯτϦ͕800ڧ·ͰΒΉͱ, ping͕ ඈͳ͘ͳΔ,
௨৴͕Ͱ͖ͳ͘ͳΔͳͲͷো͕ൃੜ͠ ͨ. → ARPςʔϒϧͷΤϯτϦ͕ଟ͔ͬͨ͜ͱ͕ݪҼ
500ϗετͷݶք • ͜ͷ͜ͱ͔Β, ༨ΓARPςʔϒϧͷΤϯτϦ͕ଟ͍ͱ ಈ࡞͕ෆ҆ఆʹͳΔ. • ͦͷଞʹ, ϗετ͕૿͑Δ͜ͱͰϒϩʔυΩϟετύ έοτ͕ແࢹͰ͖ͳ͍ྔʹ·Ͱ૿Ճ͢ΔͨΊ, ύέοτ
ϩε͕૿Ճ͢Δ. → Ҏ্ͷ͜ͱ͔Β, ϗετ500ఔʹ͓͖ͯ͘͠.
ωοτϫʔΫߏͷ֊Խ
ωοτϫʔΫߏͷ֊Խ • ͜͜·Ͱͷରࡦͱͯ͠, ωοτϫʔΫߏͷ֊Խ͕ϕετϓϥ ΫςΟεͱཱͯ֬͠ • 3ߏͰߏ͢Δ͜ͱ͕ηΦϦʔ • Ұ൪খ͍͞ͷ͕AccessΤϦΞ •
͕࣍DistributionΤϦΞ • Ұ൪্͕CoreΤϦΞ or OSPF(Open Shortest Path First)ΤϦΞ
ωοτϫʔΫߏͷ֊Խ Ҿ༻ɿhttp://www.infraexpert.com/study/catalyst2.html
ωοτϫʔΫߏͷ֊Խ • AccessΤϦΞͰ100, 200Ͱ͑Δ. • DistributionΤϦΞͰ1,000ఔ • CoreΤϦΞͰ10,000୯Ґ͕ѻ͑Δ. → ֊ߏΛઃ͚Δ͜ͱ͕Ұൠత
άϩʔόϧԽ
άϩʔόϧԽ • άϩʔόϧԽͱͳΜͳͷ͔ ‣ τϥϑΟοΫάϩʔόϧԽͷ࣌ ‣ ଠฏ༸Λ͑ΔΞΫηεͳΜ͔Λݴ͏. → ͔ͳΓͷΦʔόʔϔουʹͳΔ.
͓͖ͬͯ͘ϨΠςϯγ
άϩʔόϧԽ • ଠฏ༸Λ͑ΔΑ͏ͳ௨৴Ͱ, ϨΠςϯγ͕େ ෯ʹ૿Ճ͢Δ. ‣ 1ͭͷσʔληϯλʔͰ͠ΜͲ͍. ‣ CDNΛ͏ͱμϯϩʔυ͕࠷దԽ. →
άϩʔόϧͳαʔϏεͰඞਢͰ͋Δ.
CDNͬͯͳΜͩʁ • CDNContent Deliver Networkͷ͜ͱ. ‣ ੈքதʹΩϟογϡαʔόΛஔ͍͓͖ͯ, ͦ͜ʹϝσΟΞΛ Ωϟογϡ͓ͤͯ͘͞. ‣
Ϣʔβʔ͔Βཁٻ͕͋ͬͨ࣌, ͦͷϢʔβʔʹҰ൪͍ۙΩϟο γϡαʔόʹΞΫηεͯ͠ϝσΟΞΛμϯϩʔυ͢Δ͜ͱʹ ͳΔ. ‣ ੈքதʹΩϟογϡαʔό͕͋ΔͷͰ, ϨΠςϯγ͕ݮগ͢Δ.
CDNͬͯͳΜͩʁ • Ϥʔϩούͷαʔό͔Βμϯϩʔυ͠Α͏ͱͨ͠ͱ͖ʹ, • CDNແ͠ ϤʔϩούͷαʔόʹΞΫηε • CDN͋Γ ۙ͘ͷΩϟογϡαʔό͔Βμϯϩʔυ •
ઌ΄ͲͷϨΠςϯγΛݟΔͱ, ͳΔ͔ۙ͘͘ΒDL͍ͨ͠.
Lesson 39 ͞ΒͳΔ্ݶ
10Gbps͑ͷੈք
10Gbps͑ͷੈք • 10GbpsΛ͑Δͱ͕มΘͬͯ͘Δ. • ͦͷੈքઢͰ, BGP(Boarder Gateway Protocol) ͱ͍͏ϓϩτίϧΛ༻͍ͯ͠Δ. •
AS(Autonomous System)൪߸ΛׂΓৼΓ, ͦͷ ൪߸ׂ͕ΓৼΒΕ͍ͯΔऀಉ࢜Ͱ௨৴ͯ͠ܦ࿏ ใΛަ͍ͯ͠Δ.
10Gbps͑ͷੈք • ͜͜ͰޡͬͨઃఆΛ͢Δͱ, Πϯλʔωοτ͕յΕΔ. • ઌ͋ͬͨຊͷ௨৴ো, Google͕ޡͬͨܦ࿏ใΛ ྲྀͯ͠͠·ͬͨ͜ͱʹΑΔͷͩͬͨ. • σʔλྔ͕ଟ͔ͬͨͨΊ,
ϋϯάͯ͠͠·͏ϧʔλ͋ͬͨ ͱ͔ͳΜͱ͔. • http://itpro.nikkeibp.co.jp/atcl/column/ 14/346926/082701101/
ͯͳͷΠϯϑϥ - ୈ11ճʙୈ15ճ·ͱΊ -
ୈ11ճʙୈ15ճͷ·ͱΊ • WebαʔϏεͷΠϯϑϥ, ҎԼͷ2͕ॏཁ 1. ίετɾߴεέʔϥϏϦςΟ 2. ఔʑʹߴ͍৴པੑ • ΩʔͱͳΔٕज़
• εέʔϥϏϦςΟɾɾޮ্ɾωοτϫʔΫ