在没有用Redisson时,用jmeter做压力测试时出现的问题。库存设定为50,用5个线程去测
测试代码
//秒杀活动
@GetMapping("buyItem")
public Object getUserInfoByUserId(@RequestParam(value = "itemId",required = true) long item){
RedissonRedis value = (RedissonRedis) RedisUtil.getValue(redisTemplate, CarownerhomeKeyName.buyShopItemInfo + item);
long count= Long.parseLong(value.getItemCount());
if (value==null ){
return "商品不存在";
}
System.out.println("当前商品"+item+"的redis库存"+count);
if (count > 0){
//减库操作
updateRedis(item);
System.out.println("购买商品后"+item+"的mysql库存"+redissonService.getById(item).getItemCount());
RedissonRedis value1 =(RedissonRedis) RedisUtil.getValue(redisTemplate, CarownerhomeKeyName.buyShopItemInfo + it