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
150
ISUCONってなんだ / What is ISUCON
bath_poo_
0
340
Web技術の基本 8回目 / Introduction to Web technologies 8th class
bath_poo_
0
180
Web技術の基本 7回目 / Introduction to Web technologies 7th class
bath_poo_
0
150
Web技術の基本 6回目 / Introduction to Web technologies 6th class
bath_poo_
1
250
Web技術の基本 5回目 / Introduction to Web technologies 5th class
bath_poo_
0
130
Web技術の基本 4回目 / Introduction to Web technologies 4th class
bath_poo_
0
210
Web技術の基本 3回目 / Introduction to Web technologies 3rd class
bath_poo_
0
250
Other Decks in Technology
See All in Technology
DevinはクラウドエンジニアAIになれるのか!? 実践的なガードレール設計/devin-can-become-a-cloud-engineer-ai-practical-guardrail-design
tomoki10
3
1.5k
近年の PyCon 情勢から見た PyCon APAC のまとめ
terapyon
0
260
サーバシステムを無理なくコンテナ移行する際に伝えたい4つのポイント/Container_Happy_Migration_Method
ozawa
1
120
スケールアップ企業のQA組織のバリューを最大限に引き出すための取り組み
tarappo
4
1.1k
GitHub MCP Serverを使って Pull Requestを作る、レビューする
hiyokose
2
500
マルチアカウント管理で必須!AWS Organizationsの機能とユースケース解説
nrinetcom
PRO
1
120
AIエージェントキャッチアップと論文リサーチ
os1ma
6
1.3k
Cloud Native PG 使ってみて気づいたことと最新機能の紹介 - 第52回PostgreSQLアンカンファレンス
seinoyu
2
250
コード品質向上で得られる効果と実践的取り組み
ham0215
2
220
Zabbixチョットデキルとは!?
kujiraitakahiro
0
120
Symfony in 2025: Scaling to 0
fabpot
2
270
Restarting_SRE_Road_to_SRENext_.pdf
_awache
1
210
Featured
See All Featured
GitHub's CSS Performance
jonrohan
1030
460k
A better future with KSS
kneath
239
17k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
102
19k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
16k
Stop Working from a Prison Cell
hatefulcrawdad
268
20k
The Cost Of JavaScript in 2023
addyosmani
48
7.6k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
34
2.9k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
160
15k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
227
22k
Measuring & Analyzing Core Web Vitals
bluesmoon
6
360
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
331
21k
Building a Modern Day E-commerce SEO Strategy
aleyda
39
7.2k
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. ఔʑʹߴ͍৴པੑ • ΩʔͱͳΔٕज़
• εέʔϥϏϦςΟɾɾޮ্ɾωοτϫʔΫ