Масштабируйте @SqsListener из Spring-cloud-aws 3.0.0JAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Масштабируйте @SqsListener из Spring-cloud-aws 3.0.0

Сообщение Anonymous »

Пытаюсь использовать SQS как можно быстрее и надежнее, используя аннотацию @SqsListener.
Вот мой код:

Код: Выделить всё

@SqsListener(value = "${sqs-url}", maxConcurrentMessages = "${maxConcurrentMessages:30}",
maxMessagesPerPoll = "${maxMessagesPerPoll:15}", pollTimeoutSeconds = "${pollTimeoutSeconds:5}")
public void listenEvent(List messages, BatchAcknowledgement ack) {
var successfullyProcessed = new HashSet();
// https://docs.awspring.io/spring-cloud-aws/docs/3.0.0/reference/html/index.html#batchacknowledgement

messages.forEach(message -> {
try {
// ... my logic ....

successfullyProcessed.add(message);
} catch (Exception e) {
log.error("Failed message={}", message, e);
}
});
ack.acknowledge(successfullyProcessed);
log.info("Acknowledged {} messages", successfullyProcessed.size());
}
дополнительная конфигурация для подтверждения вручную:

Код: Выделить всё

        //...
// https://docs.awspring.io/spring-cloud-aws/docs/3.0.0/reference/html/index.html#acknowledging-messages
factory.configure(options -> options
.maxDelayBetweenPolls(Duration.ofSeconds(5))
.acknowledgementMode(AcknowledgementMode.MANUAL)
.acknowledgementInterval(Duration.ofSeconds(5))
.acknowledgementThreshold(10)
.acknowledgementOrdering(AcknowledgementOrdering.PARALLEL));
Я считаю, что maxConcurrentMessages — это количество потоков, которые должны выполняться параллельно, но не уверен. Если это так, то не хочу, чтобы это число было слишком большим, поскольку у меня ограниченный процессор. Проблема в том, что maxMessagesPerPoll не может быть выше, чем maxConcurrentMessages, и поэтому я не могу проводить опросы для 100 сообщений, используя 8 потоков. Как я могу сделать это эффективным, используя низкие значения maxConcurrentMessages?


Подробнее здесь: https://stackoverflow.com/questions/762 ... -aws-3-0-0
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Соединение Docker Cloud Cloud Cloud Cloud
    Anonymous » » в форуме JAVA
    0 Ответы
    52 Просмотры
    Последнее сообщение Anonymous
  • Соединение Docker Cloud Cloud Cloud Cloud
    Anonymous » » в форуме JAVA
    0 Ответы
    60 Просмотры
    Последнее сообщение Anonymous
  • Spring Boot - @SQSListener и @spybean не работают вместе?
    Anonymous » » в форуме JAVA
    0 Ответы
    1 Просмотры
    Последнее сообщение Anonymous
  • Сервер Spring Cloud Gateway MVC. Можем ли мы использовать Spring MVC со шлюзом Spring Cloud?
    Anonymous » » в форуме JAVA
    0 Ответы
    111 Просмотры
    Последнее сообщение Anonymous
  • Сервер Spring Cloud Gateway MVC. Можем ли мы использовать Spring MVC со шлюзом Spring Cloud?
    Гость » » в форуме JAVA
    0 Ответы
    134 Просмотры
    Последнее сообщение Гость

Вернуться в «JAVA»