игра брюс 2048
Главная / Программирование / Проектирование высоконагруженных систем / Тест 115

Проектирование высоконагруженных систем - тест 115

Упражнение 1:
Номер 1
Для каких целей используются баннеры на главной странице проекта Mail.ru?

Ответ:

 (1) для перенаправления трафика на проект новости 

 (2) для портальной навигации 

 (3) для балансировки нагрузки 

 (4) для навигации по рекламе 


Номер 2
Какова нагрузка на рекламную систему проекта Mail.ru?

Ответ:

 (1) нагрузка на рекламную систему не значительна 

 (2) рекламная система является высоконагруженной системой 

 (3) нагрузка на систему первоначально была высокой, но была снижена по результатам переработки архитектуры 

 (4) нагрузка на рекламную систему зависит от региона пользователя 


Номер 3
Каковы особенности рекламной системы проекта Mail.ru?

Ответ:

 (1) рекламная система и CMS - это одна система 

 (2) используется не только для управления рекламой, но и для портальной навигацией 

 (3) позволяет в короткое время разместить ссылки на новый проект не всех необходимых страницах сервиса 

 (4) не имеет возможности показывать различную рекламу в зависимости от региона пользователя 


Упражнение 2:
Номер 1
Из каких компонентов состояла версия 1 рекламной системы проекта Mail.ru?

Ответ:

 (1) база данных, хранящая баннеры и атрибуты их показа 

 (2) сервер сбора статистики показа рекламы 

 (3) сервис авторизации фронтендов 

 (4) управляющий сервер с службой, регулярно собирающей рекламный файл 


Номер 2
Какие данные хранятся в хранилищах рекламной системы?

Ответ:

 (1) CSS 

 (2) картинки 

 (3) ссылки на рекламируемый ресурс 

 (4) список фронтендов, на которых надо показывать рекламу 

 (5) текст рекламы 


Номер 3
Каким образом фронтенд сервер показывает рекламу в первой версии архитектуры рекламной системы проекта Mail.ru?

Ответ:

 (1) почтовые фронтенд сервера загружают рекламу из файла через perl скрипты 

 (2) фронтенд сервер получает обновления рекламного файла по мере обновления показываемой рекламы 

 (3) главная страница используюет для показа рекламы модуль apache который использует SSI include 

 (4) фронтенд сервера считают количество показов каждой рекламы и раз в 30 секунд посылают пакет статистики на сервер статистики 


Упражнение 3:
Номер 1
Какие операции выполнятся в рекламной системе версии 1(2004) проекта Mail.ru для показа рекламы фронтенд серверами?

Ответ:

 (1) управление показом рекламы осуществляется через редактирование базы данных 

 (2) управляющий сервер раз в минуту собирает из записей базы данных бинарный файл с рекламой 

 (3) сервер статистики по установленным с фронтенд серверами TCP соединениям получает пакет статистики в момент показа рекламы 

 (4) сервер статистики собирает хиты за 30 секунд и пишет в базу статистику 1 раз в 30 секунд 


Номер 2
Какие утверждения про работу сервера сбора статистики первой версии архитектуры (2004) рекламной системы проекта Mail.ru верны?

Ответ:

 (1) при остановке рекламной службы фронтенд сервера через некоторое время начинают показывать вместо рекламы пустые места 

 (2) при увеличении количества показываемой рекламы необходимо пропорциональное увеличение количества управляющих серверов 

 (3) рекламная система содержит в своих базах всю необходимую информацию для показа рекламы, включая картинки  

 (4) большое количества показывающих рекламу фронтенд серверов вызывает проблемы с нагрузкой на сеть при раздаче этим серверам файла с актуальной рекламой 

 (5) система занимает малое количество серверов 


Номер 3
Какие утверждения насчёт файла с рекламой, используемой в рекламной системе версии 1 (2004) проекта Mail.ru верны?

Ответ:

 (1) файл в бинарном формате содержит слоты с рекламой 

 (2) файл выкачивается каждым фронтенд сервером и хранится на сервере локально 

 (3) файл содержит так же картинки, используемые в рекламе 

 (4) файл заново пере-собирается каждую минуту 


Упражнение 4:
Номер 1
Какие утверждения насчёт разделяемой библиотекой рекламного модуля и самого рекламного модуля фронтенд сервера верны (в рекламной системе проекта Mail.ru)?

Ответ:

 (1) рекламный модуль отображает файл рекламы на адресное пространство процесса 

 (2) рекламный модуль по заданному номеру слота выдаёт текст рекламного баннера 

 (3) рекламный модуль посылает UDP пакет с статистикой при каждом показе рекламы 

 (4) рекламный модуль сам пере-запрашивает файл с рекламой раз в минуту 


Номер 2
Чем отличается (в рекламной системе проекта Mail.ru) подключение модуля рекламы к SSI фронтенду от поключения модуля рекламы к Perl фронтенду?

Ответ:

 (1) в SSI фронтенд используется mod_include, в отличие от Perl фронтенда 

 (2) в SSI фронтенд в отличие от Perl фронтенда, используется отдельный скрипт, обновляющий файл рекламы каждую минуту 

 (3) в Perl фронтенде библиотеки поддержки шаблонов используется через переходник MTemplate 

 (4) в Perl фронтенде рекламный модуль подключается в mod_perl, a не напрямую к apache 


Номер 3
Чем отличается подключение модуля рекламы к Lite фронтенду и Perl фронтенду (в рекламной системе проекта Mail.ru)?

Ответ:

 (1) в Lite фронтенде используется mod_include, в отличие от Perl фронтенда 

 (2) в Lite фронтенде модуль статистики подключается к сильно обрезанному серверу apache 

 (3) в Perl фронтенде библиотек поддержки шаблонов используется через переходник MTemplate 

 (4) в Perl фронтенде рекламный модуль подключается в mod_perl, a не напрямую к apache 


Упражнение 5:
Номер 1
Какие утверждения о демоне сборе статистики rbstatd верны?

Ответ:

 (1) демон хранит в shared memory значения статистики для каждого воркера (worker) 

 (2) демон раз в 30 секунд принимает пакеты с статистикой 

 (3) раз в 30 секунд демон записывает данные статистики в базу 

 (4) при успешной записи демон обнуляет значения своих счётчиков 

 (5) в любой момент можно отключить базу данных и данные статистики не буду потеряны 


Номер 2
Какие проблемы возникают при сбоях в rbstatd, сетевых нагрузках и в базе данных?

Ответ:

 (1) при рестарте rbstatd возможна потеря статистики за период до 30 секунд 

 (2) при разрыве соединения с базой данных сервис будет продолжать работать, не сохраняя данные в базу до тех пор, пока соединение с базой не восстановится 

 (3) при увеличении количества входящих пакетов свыше нескольких сот тысяч в секунду возможны потери статистики, так как операционная система не успевает принимать пакеты 

 (4) при разрыве соединения с фронтенд серверами, данные будут сохранены на фронтенд серверах и посланы заново, когда соединение восстановится 


Номер 3
Какие проблемы были у начальной версии демона rbdatad и каким образом они были решены?

Ответ:

 (1) количество тредов (threads) равно количеству одновременно обрабатываемых запросов: исправлено использованием асинхронной обработки нескольких запросов из одного треда 

 (2) считывание файла в память и передаче его по сети занимает много ресурсов процессора: исправлено переходом на использование протокола FTP 

 (3) синхронная обработка запросов: исправлено использованием библиотеки libevent 

 (4) медленная работа скриптов на perl: исправлено переписыванием на языке С++ 


Номер 4
Каковы особенности демона thttpd-rb?

Ответ:

 (1) конфигурация считывается из Berkly DB 

 (2) реализована синхронная обработка запросов 

 (3) использует epoll 

 (4) хорошо держит нагрузку 

 (5) рассчитан на работу на одноядерном процессоре 


Упражнение 6:
Номер 1
Какие замены компоненты были выполнены в ходе развития проекта Mail.ru и его рекламной системы?

Ответ:

 (1) thttpd демон заменен на nginx 

 (2) на главной странице проекта начал использоваться сервер imagin 

 (3) базы mysql заменены на oracle 

 (4) на остальных фронтендах apache заменён на nginx 


Номер 2
Какие узкие места были расшиты в ходе развития проекта Mail.ru и его рекламной системы?

Ответ:

 (1) серверов, раздающих файл с рекламой стало больше одного 

 (2) увеличилось количество серверов статистики 

 (3) база данных статистики разделена на 2 части: большие данные для сложных запросов и оперативные данные 

 (4) файл с рекламой раздаётся через rsync 


Номер 3
Каковы отличия сервиса версии 2(2008) от сервиса версии 1(2004) рекламного модуля проекта Mail.ru?

Ответ:

 (1) переписан thttpd - портировали исполняющий код на nginx 

 (2) на главную страницу использовали nginx 

 (3) серверов, раздающих файл с рекламой стало больше одного 

 (4) увеличилось количество серверов статистики 

 (5) добавился демон подсчёта статистики по уникальным посетителям, которые видели рекламу 

 (6) сделан шардинг по пользователям для базы данных статистики 


Упражнение 7:
Номер 1
Каковы особенности функционирования серверных профилей в рекламном модуле проекте Mail.ru?

Ответ:

 (1) обеспечивается заполнение cookes пользователя на основе отложенной обработки статистик его запросов к сервисам Mail.ru 

 (2) обновление cookes пользователя возможно не чаще, чем раз в 2 часа 

 (3) хранилище cookes пользователей должно работать в режиме 7х24, иначе данные из cookes теряются 

 (4) с точки зрения нагрузки система работает в ненагруженном режиме 


Номер 2
Какие операции выполняются при изменении cookes пользователя в рекламном модуле проекте Mail.ru?

Ответ:

 (1) информация о запросах пользователя поступает в демоны rbstat, которые перекладывают данные на сервера обсчёта статистики 

 (2) результаты обсчёта статистики перекладываются в базу tarantul 

 (3) каждый раз при обращении к фронтендам проекта профиль пользователя перезапрашивается 

 (4) время обновления cookes берётся из самих cookes, и если оно более 2 часов, то cookes обновляются из профиля пользователя 


Номер 3
С помощью каких компонент выполняется обработка серверного профиля пользователя и изменение cookes в рекламном модуле проекта Mail.ru?

Ответ:

 (1) демоны сбора статистики 

 (2) демоны обсчёта статистики 

 (3) хранилище результатов обсчёта статистики - база MySQL 

 (4) nginx-rb сервер с подключенным кодом на lua для переноса данных из профиля в cookes пользователя 


Упражнение 8:
Номер 1
Какие проблемы хранения логов в текстовом виде существуют?

Ответ:

 (1) большой объем логов 

 (2) считывание и десериализация текстовых логов требует больших затрат процессорного времени 

 (3) при добавлении новых значений в записи, парсер новой версии не может читать старые файлы 

 (4) для текстовых логов невозможно использовать распределённую обработку данных 


Номер 2
Каким образом организована хранение и обработка бинанрных логов?

Ответ:

 (1) логи хранятся в бинарном формате 

 (2) используется протокол protobuff 

 (3) для сложной выборки данных из логов используется распределённая обработка данных 

 (4) формат protobuf позволяет не хранить значения полей, если поля отсутствуют 

 (5) размер полей в формате protobuf фиксирован, например, 64-битное число всегда занимает 8 байт 


Номер 3
Какие утверждения насчёт обработки бинарных логов верны?

Ответ:

 (1) логи за день в бинарном виде занимают более 1-го террабайта 

 (2) перебор всех записей лога за день, для отбора данных по сложному условию требует значительную часть рабочего дня 

 (3) для сложной обработки бинарного лога используется распределённая обработка данных 

 (4) использование Hadoop для распределённой обработки бинарного лога неэффективно, так как он написан на java 


Упражнение 9:
Номер 1
Какие утверждения о проблемах раздачи файла с рекламой и их решении верны?

Ответ:

 (1) проблема с размером файла частично решена использованием сжатия файла 

 (2) проблема с нагрузкой на сеть при раздаче большого файла решена размещением серверов, раздающих файл на разных площадках 

 (3) проблема с зависаниями программ при записи по сети большого файла на диск решается ускорением передачи файла по сети 

 (4) проблема с зависаниями программ при записи по сети большого файла на диск решается тем что бы писать большой файл на отдельный диск 


Номер 2
Какие утверждения о проблемах началом и концом показа рекламы верны?

Ответ:

 (1) нельзя начать показ рекламы сразу после внесения баннера в базу данных, так как должен скриптами сформироваться и раздаться по большому количеству фронтендов достаточно большой новый файл рекламы 

 (2) нельзя начать показ рекламы сразу после внесения баннера в базу данных, так как запросы на добавление нового баннера в базу данных выполняются очень медленно 

 (3) нельзя прекратить показ рекламы точно после заданного количества показов, так как UDP пакеты с статистикой на основании которой считаются показы могут быть потеряны 

 (4) нельзя прекратить показ рекламы точно после заданного количества показов, так как файл рекламы будет продолжать показываться до тех пор, пока не будет заменён на новый, согласно фиксированному расписанию (раз в минуту) 


Номер 3
Какие утверждения насчёт задержек в работе рекламных систем основных игроков рынка верны?

Ответ:

 (1) во многих системах есть большая, несколько часов, задержка между изменением настроек рекламы и показом рекламы 

 (2) честный подсчёт количества показов рекламы выполняется с большой (1-2 дня) задержкой 

 (3) неточности подсчёта статистики показов рекламы критичны, если результаты используются для определения, когда отключить рекламу 

 (4) находит распространение двойной расчёт статистики: быстрый - оценочный и точный с задержкой 


Упражнение 10:
Номер 1
Чем отличается система Таргет от основного модуля рекламы сервиса Mail.ru, работающего с 2004г?

Ответ:

 (1) система Таргет это сервис, позволяющий online-пользователям размещать маленькую рекламу 

 (2) основной рекламный модуль проекта Mail.ru не может гарантировать показ рекламы заданное количество раз с большой точностью 

 (3) в системе Таргет задержка между заведением рекламы в базе и её показом значительно меньше 

 (4) система Таргет не позволяет показывать рекламу большое количество раз 

 (5) системе Таргет не позволяет прекратить показ рекламы так же быстро как основной модуль рекламы сервиса Mail.ru 


Номер 2
Какие утверждения насчёт библиотеки libslave и её использования в системе Таргет верны?

Ответ:

 (1) библиотека libslave позволяет программе подключиться к базе данных как реплике и получать online все изменения в базы данных 

 (2) использование библиотеки libslave позволяет демону применить настройки рекламы сразу после изменения их пользователем 

 (3) библиотека libslave работает как в режиме row-level репликации, так и в режими query-level репликации 

 (4) демон, использующий libslave должен уметь при старте считывать начальный набор данных из таблиц базы и только затем получать обновления данных базы 

 (5) использование библиотеки libslave позволяет отключать показ рекламы с минимальной задержкой 


Номер 3
Какие утверждения насчёт модулей системы Таргет и их взаимодействия между собой верны?

Ответ:

 (1) пользователь делает изменения настроек рекламы в базе 

 (2) все изменения сразу получаются в баннер-демоны, управляющий показом рекламы как в реплику базы 

 (3) фронтенд nginx обращается к одному из баннер-демонов по каждому хиту 

 (4) внеплановый перезапуск баннер-демонов может вызывать сбои системы 

 (5) баннер-демон считывает данные профиля пользователей из базы tarantul 




Главная / Программирование / Проектирование высоконагруженных систем / Тест 115