Ограничивающий скорость RESTful потребитель
Я использую веб-сервис с ограниченной скоростью, который позволяет мне совершать только 5 вызовов в секунду. Я использую свой сервер для передачи этих вызовов веб-клиенту:
Mashery > My Web Server > Client's Browser
Я оптимизировал использование этого веб-сервиса, но бывают случаи, когда я превышаю ограничение скорости. Вместо этого я хотел бы задержать запрос клиента на одну секунду (или дольше, если это необходимо), прежде чем отправлять вызов веб-службы в Mashery.
Есть несколько способов, которыми я могу решить эту проблему, создав простую систему очередей с базой данных, но я бы предпочел этого избежать, если что-то уже существует. Есть ли уже что-то, что ограничивает скорость потребления?
1 ответ
Чтобы надежно ограничивать запросы только до 5 в секунду, я бы использовал систему очереди / работника. Но перед этим я просто запросил бы более высокий лимит скорости, обратившись в службу поддержки API для этой платформы. Конечно, я бы также подумал об использовании кэширования, если это метод только для чтения, и вы собираете много одних и тех же данных, и это соответствует API TOS.