Компромиссная  производительность Михаил Токовинин ( QSOFT)
Что такое «большой» проект <ul><li>Сотни тысяч, миллионы, десятки миллионов хитов;   Бесперебойная работа;   Сложная струк...
Что такое рост нагрузки? <ul><li>Рост ресурсов, требуемых на обработку потока запросов; </li></ul><ul><li>Рост ресурсов, т...
Как с этим быть? <ul><li>План по нагрузкам; </li></ul><ul><li>Нагрузочное тестирование для определения производительности ...
Масштабирование <ul><li>Горизонтальное: Увеличение производительности системы за счет подключения дополнительных  cерверов...
Может перестраховаться?
Проекты, Риски, Деньги <ul><li>Любой проект действует в условиях ограниченных ресурсов </li></ul><ul><li>Проект представля...
Производительность как риск <ul><li>Производительность содержит себе во много раз меньше рисков, чем, например, сама разра...
Достаточная производ-ность <ul><li>Стоит понимать, что для снижения рисков по производительности проект должен удовлетворя...
Нормальный цикл
Быстрая помощь <ul><li>Программные решения наиболее эффективны, но требуют много времени; кроме того, требуемый уровень сп...
Вопросы? Михаил Токовинин,  [email_address]   Директор компании  QSOFT ( www.qsoft.ru )  Блог:  http://mtoko.livejournal.c...
Upcoming SlideShare
Loading in …5
×

м.токовинин компромиссная производительность

1,173 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,173
On SlideShare
0
From Embeds
0
Number of Embeds
625
Actions
Shares
0
Downloads
36
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

м.токовинин компромиссная производительность

  1. 1. Компромиссная производительность Михаил Токовинин ( QSOFT)
  2. 2. Что такое «большой» проект <ul><li>Сотни тысяч, миллионы, десятки миллионов хитов; Бесперебойная работа; Сложная структура ( серверный парк, большое количество кода ) ; Большое количество данных. </li></ul><ul><li>В чем измерять нагрузку? Технический отдел меряет посещаемость в хитах (желательно в единицу времени) </li></ul><ul><li>Соотношение хитов и посетителей зависит от типа проекта </li></ul>
  3. 3. Что такое рост нагрузки? <ul><li>Рост ресурсов, требуемых на обработку потока запросов; </li></ul><ul><li>Рост ресурсов, требуемых для хранения пользовательских данных; </li></ul><ul><li>Рост ресурсов, требуемых для передачи данных между пользователями и сервером. </li></ul><ul><li>Типичные узкие места: База данных (объемы и производительность), Производительность серверов, Скорость и объемы жестких дисков, </li></ul>
  4. 4. Как с этим быть? <ul><li>План по нагрузкам; </li></ul><ul><li>Нагрузочное тестирование для определения производительности системы; </li></ul><ul><li>Инвестиции в повышение предела по производительности </li></ul>
  5. 5. Масштабирование <ul><li>Горизонтальное: Увеличение производительности системы за счет подключения дополнительных cерверов. Но как быть с базой данных? </li></ul><ul><li>Вертикальное: Увеличение производительности системы за счет увеличения сервера. Но всегда есть предел! </li></ul><ul><li>Функциональное разбиение: Разные функциональные части работают и хранятся на разных серверах системы. </li></ul><ul><li>Шардинг: Разбиение данных на кусочки, которые раскладываются по серверам-шардам. Есть статический (по первой букве) и динамический (с координирующим центром) </li></ul>
  6. 6. Может перестраховаться?
  7. 7. Проекты, Риски, Деньги <ul><li>Любой проект действует в условиях ограниченных ресурсов </li></ul><ul><li>Проект представляет собой комплекс задач, решение каждой из которых критично для успеха проекта </li></ul><ul><li>Проект, а точнее каждая составная задача содержит в себе множество рисков. И производительность, лишь одна из задач </li></ul><ul><li>Производительность только кажется самой сложной и необходимой задачей (люди боятся неизвестного или того, в чем плохо разбираются) </li></ul>
  8. 8. Производительность как риск <ul><li>Производительность содержит себе во много раз меньше рисков, чем, например, сама разработка или «продвижение» и легко поддается планированию </li></ul><ul><li>Реализация рисков по производительности растянуты во времени и у владельцев проекта есть время на исправление ошибок (в отличие, например, от рисков надежности или безопасности) </li></ul><ul><li>Производительность – это приятные хлопоты </li></ul>
  9. 9. Достаточная производ-ность <ul><li>Стоит понимать, что для снижения рисков по производительности проект должен удовлетворять требованиям «достаточной производительности». Нет необходимости переплачивать за то, чего еще нет и скоро не будет. </li></ul><ul><li>Вероятность необходимости полной переделки системы больше связана с рисками самой разработкой, чем с рисками по производительности </li></ul><ul><li>Всегда есть запас по времени, чтобы все успеть </li></ul>
  10. 10. Нормальный цикл
  11. 11. Быстрая помощь <ul><li>Программные решения наиболее эффективны, но требуют много времени; кроме того, требуемый уровень специалистов иногда запредельно высок; </li></ul><ul><li>Более мощное аппаратное обеспечение; </li></ul><ul><li>Редуцирование функциональности; </li></ul><ul><li>Уменьшение качества; </li></ul><ul><li>Оптимизация нагрузки; </li></ul>
  12. 12. Вопросы? Михаил Токовинин, [email_address] Директор компании QSOFT ( www.qsoft.ru ) Блог: http://mtoko.livejournal.com

×