Как реализовать слушатель SQS в Spring Framework 4.2.6 для архитектуры, управляемой событиями?JAVA

Программисты JAVA общаются здесь
Anonymous
Как реализовать слушатель SQS в Spring Framework 4.2.6 для архитектуры, управляемой событиями?

Сообщение Anonymous »

Я работаю над устаревшей системой, используя Spring Framework 4.2.6 ( не Spring Boot ), и мне нужно интегрировать SQS AWS как часть архитектуры, управляемой событиями. Нативные аннотации, такие как @sqslistener (доступны в Spring Cloud AWS), не совместимы с этой версией.
❌ Ограничения:
  • Не может обновляться до Spring Boot с момента (Legacy Constraint)
👇 То, что я сделал до сих пор:
вручную опросывает очередь с использованием amaonsqs.receivemessage ()

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

private void readFromQueueAndProcessInBatches() {
final AmazonSQS sqs = getAmazonSQS();
String queueUrl = properties.getQueueUrl();
boolean keepReading = true;
while (keepReading) {
ReceiveMessageRequest receiveMessageRequest = new ReceiveMessageRequest(queueUrl);
receiveMessageRequest.setMaxNumberOfMessages(10);
receiveMessageRequest.withWaitTimeSeconds(0);
receiveMessageRequest.setVisibilityTimeout(60);
// Fetch messages from SQS
List messages = sqs.receiveMessage(receiveMessageRequest).getMessages();
if (messages == null || messages.isEmpty()) {
keepReading = false;
} else {
//process in batches
iterateAndProcessMessages(messages);
}
}
}
⚠ рассеяния с текущим подходом:
  • Неэффективность опроса. Это также добавляет задержку по сравнению с нативными моделями, основанными на слушателях. />

✅ Requirements:


Poll messages from an SQS queue using @SqsListener

[*]Trigger Spring events or business logic on message arrival

< /ul>
❓ Мои вопросы: < /strong> < /p>
  • Это лучший подход для моделирования слушателя SQS в весенних рамках 4.2.6? /> Любое понимание или пример кода будут высоко оценены. Спасибо!


Подробнее здесь: https://stackoverflow.com/questions/796 ... riven-arch

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