@Override
@Async("asyncTaskExecutor")
public void onMessage(MapRecord<String, String, String> entries) {
redisTemplate.opsForValue().increment("debug-message");
int c = (int) redisTemplate.opsForValue().get("debug-message");
int time = 1;
try {
while(time<=60){
time++;
Thread.sleep(1000);
redisTemplate.opsForValue().increment("debug-message-"+c);
}
} catch (InterruptedException e) {
throw new RuntimeException(e);
}
}
核心线程1 最大线程1000 使用CallerRunsPolicy
这个代码是redis stream的接收的
一次性插入了大量数据 但是并没有出现并发处理的情况
这个是为什么?我理解错误了还是使用错误了?
是个虚拟化线程的好场景