Параллелизм в Apache Camel - Разница между завершением Fulture и ParalleleLocessingJAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Параллелизм в Apache Camel - Разница между завершением Fulture и ParalleleLocessing

Сообщение Anonymous »

У меня есть проект Spring Boot Camel, который потребляет сообщения от подписки и обновлений GCP Pubsub 4 таблицы Dynamodb. 5 < /li>
concurrentConsumers = 10 < /li>
< /ul>
Маршрут считывает сообщения в формате Protobuf, Unmarshals и обновляет таблицы Dynamodb, вызывая пружинный боб. < /P>

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

//Route
from(pubSubTopic)
.unmarshal(protobufDataFormat)
.bean("dynamoService", "updateDynamo") //Updates 4 DynamoDB tables.
DynamoService - это боб, который параллельно обновляет 4 таблицы DynamoDB.

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

@Service
public class DynamoService {
public void updateDynamo(Object object) {
CompletableFuture.allOf(updateTable1(object),
updateTable2(object),
updateTable3(object),
updateTable4(object)
).join();
}
}
< /code>
Во время высокого объема сообщений я вижу, как несколько сообщений истекают к крайнему сроку ACK и переизданы. Задержка обработки сообщений также выше. 
Я прекрасно настраиваю потребитель и смотрю на то, как обрабатываются обновления.//Route
from(pubSubTopic)
.unmarshal(protobufDataFormat)
.multicast().parallelProcessing()
.bean("dynamoService", "updateDynamo1")
.bean("dynamoService", "updateDynamo2")
.bean("dynamoService", "updateDynamo3")
.bean("dynamoService", "updateDynamo4")
.end()
Какова разница/воздействие между использованием overseablefuture.allof () vs .multicast (). ParallelProcessing () В маршруте верблюда?
Я буду измерять производительность двух проектов. Этот вопрос состоит в том, чтобы понять, как модель резьбового верблюда обрабатывает два дизайна.

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

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

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

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

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

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

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