HL- Строительсво. Заметки прораба. Дмитрий Молчанов, НГС
Вступление <ul><li>Революции не будет. Доклад – собственный опыт и мысли. </li></ul><ul><li>О чём я говорю  -  только о ве...
Веб-проект. Слои. У веб-проектов есть слои… то есть базовая архитектура: <ul><li>HTTP </li></ul>
Веб-проект. Слои. У веб-проектов есть слои… то есть базовая архитектура: <ul><li>HTTP </li></ul><ul><li>APPLICATION (PHP) ...
Веб-проект. Слои. У веб-проектов есть слои… то есть базовая архитектура: <ul><li>HTTP </li></ul><ul><li>APPLICATION (PHP) ...
Веб-проект.Эволюция Слои. У веб-проектов есть слои… то есть базовая архитектура: <ul><li>HTTP </li></ul><ul><li>APPLICATIO...
Веб-проект.Эволюция
Веб-проект.Эволюция Первый шаг к масштабированию.
Веб-проект.Эволюция Web  перестал справляться с нагрузкой. Вот теперь уже  HL.
Веб-проект.Эволюция Web  не справляется с нагрузкой, теперь и  DB  перестал.  Вот теперь уже совсем  HL.  Время думать.
Веб-проект.Эволюция ЧТО ДЕЛАТЬ?! ©  Чернышевский
Веб-проект.Эволюция <ul><li>ЧТО ДЕЛАТЬ?! </li></ul><ul><li>Оптимизировать </li></ul>
Веб-проект.Эволюция <ul><li>ЧТО ДЕЛАТЬ?! </li></ul><ul><li>Оптимизировать </li></ul><ul><li>Масштабировать </li></ul>
Масштабирование Вертикально
Масштабирование Вертикально
Масштабирование Вертикально Но не вечно, крутое оборудование стоит крутых денег.
Масштабирование Горизонтально
Масштабирование Горизонтально
Масштабирование Горизонтально
Масштабирование Горизонтально И так может продолжаться вечно…
HL. Цели и задачи. Целью строительства системы является система которая предоставляет возможность работать с постоянно рас...
HL. Архитектура <ul><li>инфраструктура (сеть/балансировка нагрузки) </li></ul>
HL. Архитектура <ul><li>аппаратная платформа (группы серверов) </li></ul><ul><li>инфраструктура (сеть/балансировка нагрузк...
HL. Архитектура <ul><li>программная архитектура ( php/mysql/nginx/memcached) </li></ul><ul><li>аппаратная платформа (групп...
HL. Архитектура <ul><li>приложение (НГС) </li></ul><ul><li>программная архитектура ( php/mysql/nginx/memcached) </li></ul>...
HL. Архитектура <ul><li>Варианты расширения аппаратной платформы: </li></ul><ul><ul><li>Установка «независимых серверов» <...
HL. Архитектура <ul><li>Программная платформа  </li></ul><ul><li>Приложение </li></ul><ul><ul><li>Общение с нижележащими с...
HL. Архитектура <ul><li>Потенциально проблемные места </li></ul><ul><ul><li>Диск </li></ul></ul><ul><ul><ul><li>файловый к...
Диагностика <ul><li>Базовые средства </li></ul><ul><ul><li>top </li></ul></ul><ul><ul><li>iostat </li></ul></ul><ul><ul><l...
Жизненный опыт <ul><li>Просчеты в расчетах </li></ul><ul><li>Обстоятельства как двигатель прогресса </li></ul><ul><li>Кто ...
Вопросы? Дмитрий Молчанов, НГС [email_address] 8-800-2000-383
Upcoming SlideShare
Loading in …5
×

CodeFest 2010. Молчанов Д. — Разработка высоконагруженных систем

1,239 views
1,168 views

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
1,239
On SlideShare
0
From Embeds
0
Number of Embeds
540
Actions
Shares
0
Downloads
7
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

CodeFest 2010. Молчанов Д. — Разработка высоконагруженных систем

  1. 1. HL- Строительсво. Заметки прораба. Дмитрий Молчанов, НГС
  2. 2. Вступление <ul><li>Революции не будет. Доклад – собственный опыт и мысли. </li></ul><ul><li>О чём я говорю - только о веб-проектах, не о биллингах, процессингах или банковских приложениях. </li></ul><ul><li>Что есть Хайлоад. </li></ul><ul><ul><li>Что есть веб проект </li></ul></ul><ul><ul><li>Что же я называю HL- проектом </li></ul></ul>
  3. 3. Веб-проект. Слои. У веб-проектов есть слои… то есть базовая архитектура: <ul><li>HTTP </li></ul>
  4. 4. Веб-проект. Слои. У веб-проектов есть слои… то есть базовая архитектура: <ul><li>HTTP </li></ul><ul><li>APPLICATION (PHP) </li></ul>
  5. 5. Веб-проект. Слои. У веб-проектов есть слои… то есть базовая архитектура: <ul><li>HTTP </li></ul><ul><li>APPLICATION (PHP) </li></ul><ul><li>DATABASE </li></ul>
  6. 6. Веб-проект.Эволюция Слои. У веб-проектов есть слои… то есть базовая архитектура: <ul><li>HTTP </li></ul><ul><li>APPLICATION (PHP) </li></ul><ul><li>DATABASE </li></ul>
  7. 7. Веб-проект.Эволюция
  8. 8. Веб-проект.Эволюция Первый шаг к масштабированию.
  9. 9. Веб-проект.Эволюция Web перестал справляться с нагрузкой. Вот теперь уже HL.
  10. 10. Веб-проект.Эволюция Web не справляется с нагрузкой, теперь и DB перестал. Вот теперь уже совсем HL. Время думать.
  11. 11. Веб-проект.Эволюция ЧТО ДЕЛАТЬ?! © Чернышевский
  12. 12. Веб-проект.Эволюция <ul><li>ЧТО ДЕЛАТЬ?! </li></ul><ul><li>Оптимизировать </li></ul>
  13. 13. Веб-проект.Эволюция <ul><li>ЧТО ДЕЛАТЬ?! </li></ul><ul><li>Оптимизировать </li></ul><ul><li>Масштабировать </li></ul>
  14. 14. Масштабирование Вертикально
  15. 15. Масштабирование Вертикально
  16. 16. Масштабирование Вертикально Но не вечно, крутое оборудование стоит крутых денег.
  17. 17. Масштабирование Горизонтально
  18. 18. Масштабирование Горизонтально
  19. 19. Масштабирование Горизонтально
  20. 20. Масштабирование Горизонтально И так может продолжаться вечно…
  21. 21. HL. Цели и задачи. Целью строительства системы является система которая предоставляет возможность работать с постоянно растущей нагрузкой. Быть надежной и масштабируемой.
  22. 22. HL. Архитектура <ul><li>инфраструктура (сеть/балансировка нагрузки) </li></ul>
  23. 23. HL. Архитектура <ul><li>аппаратная платформа (группы серверов) </li></ul><ul><li>инфраструктура (сеть/балансировка нагрузки) </li></ul>
  24. 24. HL. Архитектура <ul><li>программная архитектура ( php/mysql/nginx/memcached) </li></ul><ul><li>аппаратная платформа (группы серверов) </li></ul><ul><li>инфраструктура (сеть/балансировка нагрузки) </li></ul>
  25. 25. HL. Архитектура <ul><li>приложение (НГС) </li></ul><ul><li>программная архитектура ( php/mysql/nginx/memcached) </li></ul><ul><li>аппаратная платформа (группы серверов) </li></ul><ul><li>инфраструктура (сеть/балансировка нагрузки) </li></ul>
  26. 26. HL. Архитектура <ul><li>Варианты расширения аппаратной платформы: </li></ul><ul><ul><li>Установка «независимых серверов» </li></ul></ul><ul><ul><li>Установка аппаратных ячеек платформы </li></ul></ul><ul><li>Конфигурация серверов </li></ul><ul><ul><li>Диски </li></ul></ul><ul><ul><ul><li>RAID </li></ul></ul></ul><ul><ul><ul><li>LVM </li></ul></ul></ul><ul><ul><li>Сеть </li></ul></ul><ul><ul><ul><li>Буффера </li></ul></ul></ul><ul><ul><ul><li>rp_filter </li></ul></ul></ul>
  27. 27. HL. Архитектура <ul><li>Программная платформа </li></ul><ul><li>Приложение </li></ul><ul><ul><li>Общение с нижележащими слоями архитектуры </li></ul></ul><ul><ul><ul><li>Прозрачное </li></ul></ul></ul><ul><ul><ul><li>Открытое </li></ul></ul></ul><ul><ul><ul><ul><li>DNS </li></ul></ul></ul></ul><ul><ul><ul><ul><li>php-prepend </li></ul></ul></ul></ul>
  28. 28. HL. Архитектура <ul><li>Потенциально проблемные места </li></ul><ul><ul><li>Диск </li></ul></ul><ul><ul><ul><li>файловый кэш </li></ul></ul></ul><ul><ul><ul><li>дисковые операции </li></ul></ul></ul><ul><ul><li>Кэш </li></ul></ul><ul><ul><ul><li>Локальный </li></ul></ul></ul><ul><ul><ul><li>Политика кэширования </li></ul></ul></ul><ul><ul><li>Сеть </li></ul></ul><ul><ul><ul><li>Длинные пути </li></ul></ul></ul>
  29. 29. Диагностика <ul><li>Базовые средства </li></ul><ul><ul><li>top </li></ul></ul><ul><ul><li>iostat </li></ul></ul><ul><ul><li>vmstat </li></ul></ul><ul><ul><li>ping </li></ul></ul><ul><li>Метрики </li></ul><ul><ul><li>Система </li></ul></ul><ul><ul><ul><li>LoadAvg </li></ul></ul></ul><ul><ul><ul><li>Swap/mem </li></ul></ul></ul><ul><ul><ul><li>CPU Times </li></ul></ul></ul><ul><ul><li>Сеть </li></ul></ul><ul><ul><ul><li>Потери </li></ul></ul></ul><ul><ul><ul><li>Время </li></ul></ul></ul>
  30. 30. Жизненный опыт <ul><li>Просчеты в расчетах </li></ul><ul><li>Обстоятельства как двигатель прогресса </li></ul><ul><li>Кто все эти люди?! </li></ul><ul><ul><li>о пользе понимания raid’ ов </li></ul></ul><ul><ul><li>о вреде бездумного использования БД </li></ul></ul>
  31. 31. Вопросы? Дмитрий Молчанов, НГС [email_address] 8-800-2000-383

×