Возможность дросселирования службы в Spring Загрузка
Есть ли способ достичь возможности дросселирования обслуживания для остальных служб в Spring, особенно при загрузке Spring.
Ожидание здесь: Мои сервисы открыты для внешнего мира, в настоящее время нет ограничений на количество вызовов службы в секунду/мин. Мы хотим контролировать это, установив предел дросселирования.
- У меня есть альтернативный вариант, отслеживая запросы в параллельной Hash-карте или любом кэширующем механизме.
Но больше интересуется способом Spring при рассмотрении этого. Я знаю, что смогу сделать это в node.js/scala
Ответы
Ответ 1
Существует довольно новый проект с открытым исходным кодом, который обрабатывает это:
https://github.com/weddini/spring-boot-throttling
Декларативный подход к регулированию контроля над сервисами Spring. @Throttling аннотация помогает вам ограничить количество методов обслуживания звонки за java.util.concurrent.TimeUnit для конкретного пользователя, IP адрес, заголовок HTTP/значение cookie или использование языка выражений Spring (Spel).