Делаем дешевый видео-хостинг в условиях кризиса

1,516 views

Published on

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
1,516
On SlideShare
0
From Embeds
0
Number of Embeds
14
Actions
Shares
0
Downloads
8
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Делаем дешевый видео-хостинг в условиях кризиса

  1. 1. Делаем дешевый видео-хостинг в условиях кризиса<br />Сергей Нековаль<br />Денис Елданди<br />«Грамант»<br />
  2. 2. Вступление<br />Сервис позволяет пользователям бесплатно загружать и просматривать видео-контент (японский аналог YouTube);<br /><ul><li>Работает более 9 лет
  3. 3. Основной источник дохода – реклама.
  4. 4. Показов в сутки – более 18 млн., 5 ТБ трафика
  5. 5. Зарегистрированных пользователей – более 150 тыс.</li></li></ul><li>
  6. 6.
  7. 7. Проблемы?<br />
  8. 8. Регулярные проблемы с доступностью (до 2 «крушений» в неделю)<br />Расширяемость. Исходный код – месиво из Perl, PHP, Ruby и даже Scheme.<br />Попытки решить проблему с помощью «Page generation».<br />
  9. 9. Экономика должна быть экономной!<br /><ul><li> Сократить издержки
  10. 10. Увеличить время доступности (а значит, и рекламный трафик)
  11. 11. Привести систему в состояние, позволяющее её развивать и монетизировать сервис</li></li></ul><li>Наши цели<br />Экономия на стоимости разработки<br />Экономия трудозатрат на поддержку<br />Экономия железа и трафика<br />
  12. 12. Разработка<br />
  13. 13. Принцип АК-47<br />
  14. 14. Принцип АК-47<br />Простота в изготовлении и обслуживании<br />Избегаем изобретать велосипеды и используем готовый софт<br />«Правило 5 минут» - грубая, но эффективная стрельба<br />
  15. 15. Жизненно важные органы<br />Файловое хранилище<br />База данных<br />Веб-серверы<br />
  16. 16. Файловое хранилище<br />
  17. 17.
  18. 18. Файловое хранилище<br />lighttpd 1.4 + mod_flv_streaming<br />FTP + HTTP<br />Репликация<br />Garbage Collection<br />Видео-файлы бывают дорогие и дешёвые!<br />
  19. 19. База данных<br />PostgreSQL 8.3<br />Skytools 2.1.10<br />memcached<br />
  20. 20. Падаем красиво<br />Падение encoding-процесса<br />Падение БД<br />Падение всего, кроме web-сервера<br />
  21. 21.
  22. 22. Кэширование<br />
  23. 23. Веб-сервер<br />Контроль памяти (Ruby)<br />Регулировка Fast CGI-пула<br />
  24. 24. Поддержка<br />
  25. 25. Вкалывают роботы, а не человек!<br />Автоматический мониторинг<br />Самолечение<br />«Упал-отжался»<br />
  26. 26. Мониторинг<br /><ul><li>Logs (syslog)
  27. 27. Alerts (Tenshi + Zenoss Core)
  28. 28. Performance Data (Zenoss Core)</li></li></ul><li>
  29. 29. Железо и Трафик<br />
  30. 30. Сервер железный – он выдержит!<br />CPU – большерабочих процессов (Encoding)<br />Память – больше кэш (memcached)<br />Лишние диски – продать!<br />Трафик – направляем туда, где он дешевле<br />
  31. 31. Управление трафиком<br />Серверы media - $$$<br />Серверы smedia - $$<br />CDN (FreParNet) - $<br />
  32. 32.
  33. 33. Результаты<br />Радикально снижена нагрузка на БД<br />Encoding Server – усовершенствованная очередь, использует 100% CPU<br />Web Server – выровнены напильником многочисленные проблемы lighttpd<br />
  34. 34. Результаты<br />Быстрая разработка и развитие сервиса в стиле AK-47<br />Существенное удешевление поддержки<br />Существенное удешевление трафика<br />
  35. 35. Вопросы?<br />Сергей Нековаль / snekoval@gramant.ru<br />Денис Елданди / dyeldandi@gramant.ru<br />

×