Запрос URL-адреса очереди AWS SQS с помощью Java SDK

Большинство операций AWS Java SDK для SQS требуют URL-адреса очереди.

Учитывая имя очереди, URL-адрес очереди может быть запрошен с помощью GetQueueUrl операция.

Ли AmazonSQS клиент автоматически кеширует результат этой операции, или это зависит от приложения, чтобы кэшировать URL-адрес очереди, чтобы избежать повторных запросов?

1 ответ

Если мы посмотрим на код AWS Java SDK на GitHub, то увидим, что getQueueUrl() запускает обычные хуки подготовки клиента (которые не включают в себя кэширование), а затем сразу же переходит к executeGetQueueUrl() который делает запрос, также без кеширования. Интересно, что, кажется, есть URI cachedEndpoint = null; это, кажется, нигде не используется (может быть, я что-то упустил?).

Сделав шаг назад, это имеет смысл. Автоматическое кэширование ответа в SDK может быть опасным для приложений, использующих его, поэтому решение о кэшировании или не кэшировании остается за логикой приложения, которой он принадлежит. Так что, если вам нужно кэшировать ответы, вам решать, как долго вы хотите кэшировать его и где / как его хранить.

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