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
CodeFest'10. Молчанов Д. — Разработка высоконагруженных систем
Search
CodeFest
September 23, 2010
Programming
0
43
CodeFest'10. Молчанов Д. — Разработка высоконагруженных систем
CodeFest
September 23, 2010
Tweet
Share
More Decks by CodeFest
See All by CodeFest
CodeFest 2019. Илья Редько (ONLY) — Дизайн без правок
codefest
1
710
CodeFest 2019. Александр Зезюлин (Wargaming) – Прекрасное далёко
codefest
0
680
CodeFest 2019. Александр Баяндин (Badoo) — Нетрадиционное использование автотестов
codefest
0
1.1k
CodeFest 2019. Антон Кочепасов (Rambus) — Как считать на питоне быстрее, чем на C++
codefest
0
710
CodeFest 2019. Александр Лысковский (iFarm Project, Alawar, Welltory) — Как придумывать новое: продукты, бизнесы, ниши
codefest
0
760
CodeFest 2019. Роман Квартальнов (Zephyr) — Почему Project Manager косячит?
codefest
0
910
CodeFest 2019. Florian Rival (Facebook) — Beyond Web-Apps: WebAssembly, JS and React to rewrite native apps
codefest
0
680
CodeFest 2019. Андрей Паньгин (Одноклассники) — JVM TI: как сделать «плагин» для виртуальной машины
codefest
0
990
CodeFest 2019. Владимир Плизга (ЦФТ) — Перевод Spring Boot микросервисов с Java 8 на 11: что может пойти -не- так?
codefest
0
1.4k
Other Decks in Programming
See All in Programming
HUIT新歓2024「競技プログラミング、やってみませんか?」
slephy2784
1
270
スキーマ駆動開発による品質とスピードの両立 - 私達は何故、スキーマを書くのか
kentaroutakeda
0
170
Amazon SQSコンシューマー疎結合への旅 - 出張! #DevelopersIO IT技術ブログの中の人が語る勉強会 #3
quiver
0
260
if constexpr文はテンプレート世界のラムダ式である
faithandbrave
3
640
Anthropic Cookbook のおすすめレシピ
schroneko
7
910
デフォルトにして至高、RubyMineの大好きな所
ruzia
0
310
Apache Hive 4 on Treasure Data
ryukobayashi
0
150
[技育CAMPアカデミア]アイディアを形に!【超入門】スマホアプリ開発〜リリースまでの流れをご紹介
teamlab
PRO
0
360
Elm Form Validation
bkuhlmann
0
510
Milestoner
bkuhlmann
1
410
MetricKitで予期せぬ終了を検知する話 / Detect unexpected termination with MetricKit
nekowen
1
180
冗長なエラーログを削減し、スタックトレースを手に入れる / Reducing Verbose Error Logs and Obtaining Stack Traces
upamune
0
510
Featured
See All Featured
Being A Developer After 40
akosma
57
580k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
221
21k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
121
39k
Designing Experiences People Love
moore
136
23k
Designing the Hi-DPI Web
ddemaree
276
33k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
187
16k
We Have a Design System, Now What?
morganepeng
43
6.7k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
2
1.3k
What’s in a name? Adding method to the madness
productmarketing
PRO
16
2.6k
Principles of Awesome APIs and How to Build Them.
keavy
121
16k
The Mythical Team-Month
searls
216
42k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
17
1.4k
Transcript
HL-Строительсво. Заметки прораба. Дмитрий Молчанов, НГС
Вступление • Революции не будет. Доклад – собственный опыт и
мысли. • О чём я говорю - только о веб-проектах, не о биллингах, процессингах или банковских приложениях. • Что есть Хайлоад. • Что есть веб проект • Что же я называю HL-проектом
Веб-проект. Слои. У веб-проектов есть слои… то есть базовая архитектура:
• HTTP
Веб-проект. Слои. У веб-проектов есть слои… то есть базовая архитектура:
• HTTP • APPLICATION (PHP)
Веб-проект. Слои. У веб-проектов есть слои… то есть базовая архитектура:
• HTTP • APPLICATION (PHP) • DATABASE
Веб-проект.Эволюция Слои. У веб-проектов есть слои… то есть базовая архитектура:
• HTTP • APPLICATION (PHP) • DATABASE
Веб-проект.Эволюция
Веб-проект.Эволюция Первый шаг к масштабированию.
Веб-проект.Эволюция Web перестал справляться с нагрузкой. Вот теперь уже HL.
Веб-проект.Эволюция Web не справляется с нагрузкой, теперь и DB перестал.
Вот теперь уже совсем HL. Время думать.
Веб-проект.Эволюция ЧТО ДЕЛАТЬ?! © Чернышевский
Веб-проект.Эволюция ЧТО ДЕЛАТЬ?! • Оптимизировать
Веб-проект.Эволюция ЧТО ДЕЛАТЬ?! • Оптимизировать • Масштабировать
Масштабирование Вертикально
Масштабирование Вертикально
Масштабирование Вертикально Но не вечно, крутое оборудование стоит крутых денег.
Масштабирование Горизонтально
Масштабирование Горизонтально
Масштабирование Горизонтально
Масштабирование Горизонтально И так может продолжаться вечно…
HL.Цели и задачи. Целью строительства системы является система которая предоставляет
возможность работать с постоянно растущей нагрузкой. Быть надежной и масштабируемой.
HL.Архитектура • инфраструктура (сеть/балансировка нагрузки)
HL.Архитектура • аппаратная платформа (группы серверов) • инфраструктура (сеть/балансировка нагрузки)
HL.Архитектура • программная архитектура (php/mysql/nginx/memcached) • аппаратная платформа (группы серверов)
• инфраструктура (сеть/балансировка нагрузки)
HL.Архитектура • приложение (НГС) • программная архитектура (php/mysql/nginx/memcached) • аппаратная
платформа (группы серверов) • инфраструктура (сеть/балансировка нагрузки)
HL.Архитектура • Варианты расширения аппаратной платформы: • Установка «независимых серверов»
• Установка аппаратных ячеек платформы • Конфигурация серверов • Диски • RAID • LVM • Сеть • Буффера • rp_filter
HL.Архитектура • Программная платформа • Приложение • Общение с нижележащими
слоями архитектуры • Прозрачное • Открытое • DNS • php-prepend
HL.Архитектура • Потенциально проблемные места • Диск • файловый кэш
• дисковые операции • Кэш • Локальный • Политика кэширования •Сеть •Длинные пути
Диагностика • Базовые средства • top • iostat • vmstat
• ping • Метрики • Система • LoadAvg • Swap/mem • CPU Times • Сеть • Потери • Время
Жизненный опыт • Просчеты в расчетах • Обстоятельства как двигатель
прогресса • Кто все эти люди?! • о пользе понимания raid’ов • о вреде бездумного использования БД
Вопросы? Дмитрий Молчанов, НГС
[email protected]
8-800-2000-383