Мое приложение использует один поток, а затем отправляет сообщения в три потока
Связующее:
public interface MyBinder {
@Input("input1")
SubscribableChannel input1();
@Output("output1")
MessageChannel output1();
@Output("output2")
MessageChannel output2();
@Output("output3")
MessageChannel output3();
}
Config:
spring:
cloud:
stream:
kinesis:
binder:
locks:
leaseDuration: 30
refreshPeriod: 3000
bindings:
input1:
consumer:
listenerMode: batch
recordsLimit: 1500
idleBetweenPolls: 10000
consumer-backoff: 1000
bindings:
input1:
group: my-group
destination: input1-stream
content-type: application/json
output1:
destination: output1-stream
content-type: application/json
output2:
destination: output2-stream
content-type: application/json
output3:
destination: output3-stream
content-type: application/json
Данные, которые мы отправляем в поток в каждой записи, около 800 КБ. Мы видим, что в AbstractAwsMessageHandler / AmazonKinesisAsyncClient имеется больше данных, которые приводят к очень частому сбросу GC.
Мы используем 1.0.0. РЕЛИЗ-версию Binder
Не могли бы вы помочь.