Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Анатомия баннерной системы (Артем Вольфтруб)

1,400 views

Published on

  • Be the first to comment

  • Be the first to like this

Анатомия баннерной системы (Артем Вольфтруб)

  1. 1. Анатомия баннерной системы<br />Артем Вольфтруб<br />
  2. 2. <ul><li>50 млн. показов в день
  3. 3. Система на базе Dart Enterprise
  4. 4. Расширенная статистика
  5. 5. 700 млн. показов в день
  6. 6. Собственное решение
  7. 7. Модель ориентированная на продажи
  8. 8. > 60 млн. показов в день
  9. 9. Собственное решение
  10. 10. Сложный таргетинг</li></li></ul><li>С чего начинается баннерка<br />
  11. 11.
  12. 12. На чем зарабатываем?<br /><ul><li>На трафике
  13. 13. На интересе
  14. 14. На продажах</li></li></ul><li>Ориентируемся на трафик<br /><ul><li>Нагрузка на баннерные сервера
  15. 15. Простая логика показов
  16. 16. Простая статистика</li></li></ul><li>Ориентируемся на интерес<br /><ul><li>Сложный таргетинг
  17. 17. Борьба с накрутками
  18. 18. Сложная статистика
  19. 19. Уникальные пользователи</li></li></ul><li>Ориентируемся на продажи<br /><ul><li>Мониторинг продаж
  20. 20. Интеграция с рекламодателями
  21. 21. Сложный биллинг</li></li></ul><li>Баннерный сервер<br /><ul><li>Mission critical компонент в любой баннерке
  22. 22. Наиболее нагруженный компонент
  23. 23. Простота
  24. 24. Слабая связанность
  25. 25. Независимость
  26. 26. Масштабируемость
  27. 27. Принцип «не молчать»</li></li></ul><li>Стратегии обновления. Pull<br /><ul><li>Убирает одно звено в цепи обновления
  28. 28. Упрощает добавление нового сервера
  29. 29. Позволяет иметь разные по содержимому сервера
  30. 30. Усложняет код баннерного сервера
  31. 31. Не позволяет обновить все сразу
  32. 32. Не информирует о падении сервера
  33. 33. Увеличивает неконсистентность данных</li></li></ul><li>Стратегии обновления. Push<br /><ul><li>Единая точка мониторинга
  34. 34. Возможность обновить все сразу
  35. 35. Обновления по расписанию
  36. 36. Нужно регистрировать новый сервер
  37. 37. Создается точка отказа
  38. 38. Сложно поддерживать разный контент на баннерных серверах</li></li></ul><li>Синхронизация<br />Инкрементальная<br /><ul><li>Экономия трафика
  39. 39. Уменьшение задержки обновления</li></ul>Полная<br /><ul><li>Одномоментное переключение версии данных
  40. 40. Простота реализации
  41. 41. Необходима в любом случае</li></li></ul><li>Хранение медиа данных <br /><ul><li>Файловая система баннерных серверов
  42. 42. Отдельное хранилище
  43. 43. Распределенное хранилище (CDN, облако)</li></li></ul><li>Лимиты<br /><ul><li>Одна из самых важных для бизнеса фич
  44. 44. Бережливые менеджер и расточительные разработчики</li></ul>Типы лимитов<br /><ul><li>По рекламной кампании
  45. 45. По пользователю</li></li></ul><li>Обновление статистики<br /><ul><li>Упрощает работу баннерного сервера
  46. 46. Уменьшает время ответа
  47. 47. Нельзя сделать без задержки, будут перекрутки.
  48. 48. Требуется очень быстрая обработка статистики
  49. 49. Сложно считать показы уникальным пользователям</li></li></ul><li>Общий кеш<br /><ul><li>Актуальные данные
  50. 50. Отсутствие перекруток
  51. 51. Дополнительная точка отказа
  52. 52. Нужно синхронизировать со статистикой
  53. 53. Данные могут вымываться</li></li></ul><li>Лимиты<br /><ul><li>Не используйте без нужды
  54. 54. По возможности используйте статистику
  55. 55. Готовьтесь к падению кеша
  56. 56. Разные стратегии для разных типов лимита</li></li></ul><li>Таргетинг<br /><ul><li>Занимает большую часть времени обработки запроса
  57. 57. Получение значений не должно быть частью баннерки</li></li></ul><li>Учет событий<br /><ul><li>Хранение в файлах, а не в памяти
  58. 58. Никакой предварительно обработки на баннерном сервере
  59. 59. Вообще никакой обработки</li></li></ul><li>Стратегии показов<br /><ul><li>Равномерное распределение по времени суток
  60. 60. Динамический выбор лучшего баннера
  61. 61. Принудительная открутка</li></li></ul><li>Статистика<br />Два основных типа данных<br /><ul><li>Общая статистика
  62. 62. Статистика по уникальным пользователям</li></li></ul><li>Соотношение объемов данных<br />
  63. 63. Ежедневное увеличение данных<br />Для 50 млн. показов в день<br /><ul><li>Группировка по рекламным местам – 30-40 тыс. записей
  64. 64. Группировка по пользователям 6-8 млн. записей </li></li></ul><li>Что получаем взамен?<br /><ul><li>Частотная характеристика
  65. 65. Анализ пересечения аудитории
  66. 66. Анализ параметров таргеинга
  67. 67. Post-click анализ</li></li></ul><li>Обработка статистики<br /><ul><li>Отдельный компонент системы
  68. 68. Узел суммирования и фильтрации данных
  69. 69. Быстрая загрузка
  70. 70. Разделение баз данных
  71. 71. Денормализация данных</li></li></ul><li>Данные по уникальным<br /><ul><li>Расчет статистики в фоновом режиме
  72. 72. Очередь отчетов
  73. 73. Сохранение результатов на диск</li></li></ul><li>Мониторинг<br />
  74. 74. Что дает мониторинг?<br /><ul><li>Прогнозирование нагрузки
  75. 75. Диагностика проблем на ранней стадии
  76. 76. Выявление типовых проблем -> разработка универсальных решений</li></li></ul><li>Виды мониторинга<br /><ul><li>Физический уровень
  77. 77. Уровень приложения
  78. 78. Бизнес уровень</li></li></ul><li>Мониторинг на физическом уровне<br /><ul><li>Сеть
  79. 79. Доступность сервера
  80. 80. CPU
  81. 81. Память
  82. 82. IO
  83. 83. Свободное место на дисках</li></li></ul><li>Мониторинг на уровне приложения<br /><ul><li>HTTP Errors
  84. 84. Response Time
  85. 85. Актуальность баннеров
  86. 86. Актуальность статистики
  87. 87. Размер очередей</li></li></ul><li>Мониторинг на бизнес уровне<br /><ul><li>Число зарегистрированных событий за период
  88. 88. Динамика рекламных кампаний
  89. 89. Количество отфильтрованных данных</li></li></ul><li>Чем измеряем<br /><ul><li>Критериальная система Nagios
  90. 90. Тренды Cacti
  91. 91. Журналы Tenshi</li></li></ul><li>Система мониторинга<br />
  92. 92. Поддержка системы<br /><ul><li>Налаженная система мониторинга
  93. 93. Наличие готовых лекарств
  94. 94. Простота архитектуры
  95. 95. Отлаженная процедура обновлений</li></li></ul><li>Вопросы?<br />artem@gramant.ru<br />

×