<dependency>
<groupId>com.github.phantomthief</groupId>
<artifactId>buffer-trigger</artifactId>
<version>0.2.21</version>
</dependency>
BufferTrigger<String> buffer = BatchConsumeBlockingQueueTrigger.<String> newBuilder()
// 队列最大容量
.batchSize(2)
// 每隔n秒消费一次
.linger(2, TimeUnit.SECONDS)
// 消费逻辑
.setConsumerEx((Collection<String> ids) -> {
System.out.println("id:"+ JSON.toJSONString(ids));
}).build();
public static void main(String[] args) throws InterruptedException {
int i = 0;
while (true){
buffer.enqueue(String.valueOf(i++));
Thread.sleep(100L);
}
}
注意:setConsumerEx处是单线程处理的。可以配合线程池以提高系统并发。
BufferTrigger批量消费队列
1624

被折叠的 条评论
为什么被折叠?



