Перейти к содержанию

SLA Сплиттера#

GetFeaturesByTag#

Параметр SLA Способ вычисления
Время успешных ответов (99) 6 ms За значение берется значение времени обработки запроса для перцентиля за 60 секундный отрезок времени
Время успешных ответов (999) 10 ms За значение берется значение времени обработки запроса для перцентиля за 60 секундный отрезок времени
Пропускная способность 100 krpm Количество запросов в минуту (rpm), выполненных к сервису в установленный период времени (60 секунд)
Допустимый процент ошибок с кодами (499, 5**) 0.1% Значение вычисляется как отношение количества запросов в минуту с ошибками к общему количеству запросов в минуту (RPM)
Доступность 99.9%
Среднее время восстановления 1 час Начиная с обнаружения момента проблемы
Среднее время между падениями 1000 часов Начиная с момент исправления последнего падения

Возможно увеличить пропускную способность до 10 Mrpm.

ExposeManyV2#

Параметр SLA Способ вычисления
Время успешных ответов (99) 160 ms За значение берется значение времени обработки запроса для перцентиля за 60 секундный отрезок времени
Время успешных ответов (999) 100 ms За значение берется значение времени обработки запроса для перцентиля за 60 секундный отрезок времени
Пропускная способность 1 krpm Количество запросов в минуту (rpm), выполненных к сервису в установленный период времени (60 секунд)
Допустимый процент ошибок с кодами (499, 5**) 0.1% Значение вычисляется как отношение количества запросов в минуту с ошибками к общему количеству запросов в минуту (RPM)
Доступность 99.9%
Среднее время восстановления 1 час Начиная с обнаружения момента проблемы
Среднее время между падениями 1000 часов Начиная с момент исправления последнего падения

Обработчик принимает пакеты событий экспоуза. Рекомендуемый размер пакета - 2000 событий.

Best practice#

Задача проведения аб-теста может решаться в двух возможных окружениях: - на стороне клиента, т.е. в мобильном приложении или фронтенде - на стороне сервера, т.е. на бэкенде

Клиентский эксперимент#

В клиентском эксперименте следует стремиться экономить сетевой трафик. Для этого ответ эндпоинта GetFeaturesByTag следует кэшировать на стороне клиента. Обычно длительность эксперимента составляет от 2 недель. Кэшировать ответ эндпоинта можно на весь срок, так как в течении эксперимента группа пользователя в эксперименте не может изменяться.

Аналитическая система тоже предполагает, что группа пользователя не изменяется в процессе эксперимента. Для полезной информацией является то, в каких экспериментах принял участие пользователь в конкретный день. Из этого свойства следуют оптимизации использования эндпоинта ExposeManyV2: - Точное время события не имеет значения, события экспоуза стоит отправлять пачками - Достаточно отправлять пачку один раз в сутках - Если в пачке собирается много одинаковых событий, можно оставить одно, а остальные удалить

Серверный эксперимент#

Для серверного эксперимента применимы все оптимизации эндпоинта ExposeManyV2.

Для эндпоинта GetFeaturesByTag рекомендуется обратить внимание на поле tag в запросе. Тэг предназначен для группировки экспериментов. Он позволяет получить все группы пользователя в экспериментах одним запросом. Из этого следует следующая оптимизация - один сервис должен содержать только один тэг.