1.场景
2.引入注解@Resource
@Resource
    private RedissonClient redissonClient;
 
3.引入redisson的依赖
<!--redisson-->
        <dependency>
            <groupId>org.redisson</groupId>
            <artifactId>redisson-spring-boot-starter</artifactId>
            <version>3.14.1</version>
        </dependency>
 
4.推送的数据格式是json数组
Map<String, RFuture<Object>> objectObject = new HashMap<>();
            params.forEach(json -> {
                try {
                    JSONObject jsonObjectBean = JSON.parseObject(JSON.toJSONString(json));
                    String gpsTime = jsonObjectBean.getString("lastDeviceTime");
                    String vehicleNo = jsonObjectBean.getString("vehicleNo");
                    String redisKey = "gps:mita:vehicle:gpstime:" + vehicleNo + ":" + gpsTime;
                    objectObject.put(redisKey, redissonClient.getBucket(redisKey).getAsync());
                } catch (Exception e) {
                    log.error("mita推送单个车辆信息异常(redis操作)=", e);
                }
            });
 
 
Map<String, Object> addDataMap = new HashMap<>();
            Map<String, Object> updateDataMap = new HashMap<>();
            for (String key : objectObject.keySet()) {
                Object value = objectObject.get(key).get();
                if (value == null) {
                    // redis中不存在
                    addDataMap.put(key, "1");
                } else {
                    // redis中已存在
                    updateDataMap.put(key, value);
                }
            }
 
// 开启批处理
            RBatch batch = redissonClient.createBatch();
            for (String redisKey : addDataMap.keySet()) {
                batch.getBucket(redisKey).setAsync(addDataMap.get(redisKey), 1, TimeUnit.MINUTES);
            }
            for (String redisKey : updateDataMap.keySet()) {
                batch.getBucket(redisKey).expireAsync(1, TimeUnit.MINUTES);
            }
            // 执行批处理
            batch.execute();
 
params.forEach(json -> {
JSONObject jsonObjectBean = JSON.parseObject(JSON.toJSONString(json));
String vehicleNo = jsonObjectBean.getString("vehicleNo");
String gpsTime = jsonObjectBean.getString("lastDeviceTime");
                        String redisKey = "gps:mita:vehicle:gpstime:" + vehicleNo + ":" + gpsTime;
if ("1".equals(addDataMap.get(redisKey))){
// 这里面就是新增的数据了(需要的),updateDataMap 里面是需要过滤的数据
}
  });










