Ограничивающий скорость RESTful потребитель

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

Mashery > My Web Server > Client's Browser

Я оптимизировал использование этого веб-сервиса, но бывают случаи, когда я превышаю ограничение скорости. Вместо этого я хотел бы задержать запрос клиента на одну секунду (или дольше, если это необходимо), прежде чем отправлять вызов веб-службы в Mashery.

Есть несколько способов, которыми я могу решить эту проблему, создав простую систему очередей с базой данных, но я бы предпочел этого избежать, если что-то уже существует. Есть ли уже что-то, что ограничивает скорость потребления?

1 ответ

Решение

Чтобы надежно ограничивать запросы только до 5 в секунду, я бы использовал систему очереди / работника. Но перед этим я просто запросил бы более высокий лимит скорости, обратившись в службу поддержки API для этой платформы. Конечно, я бы также подумал об использовании кэширования, если это метод только для чтения, и вы собираете много одних и тех же данных, и это соответствует API TOS.

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