Регулирование пользователя в нескольких центрах обработки данных.

Я пытаюсь реализовать функцию регулирования в nginx, которая используется несколькими серверами и центрами обработки данных. Я хотел бы знать, что будет лучшей практикой для построения этого.

Например, предположим, что у меня есть HTTP API, работающий на двух кластерах серверов (за балансировщиком нагрузки), расположенных в двух разных центрах обработки данных. Я хотел бы ограничить разработчика его API-ключом до 1000 запросов / час. Разработчик создал мобильное приложение, что означает, что в зависимости от того, где находятся его конечные пользователи, запросы будут отправляться на сервер в обоих местах (ближайший центр обработки данных).

Как бы вы осуществили регулирование в этом конкретном сценарии?

1 ответ

Самый простой способ - реализовать регулирование в каждом из N центров обработки данных отдельно. В вашем случае M=1000 запросов / час и N=2 дата-центра. Итак, просто используйте M/N=500 в качестве значения газа.

Смотрите: NGINX - дроссельные запросы для предотвращения злоупотреблений

Другие вопросы по тегам