Redis-Application (версия Spike V2)

синхронизированная заблокированная версия.

@Override
public synchronized void orderProductMockDiffUser(String productId)
{
    //1.查询该商品库存,为0则活动结束。
    int stockNum = stock.get(productId);
    if(stockNum == 0) {
        throw new SellException(100,"活动结束");
    }else {
        //2.下单(模拟不同用户openid不同)
        orders.put(KeyUtil.genUniqueKey(),productId);
        //3.减库存
        stockNum =stockNum-1;
        try {
            Thread.sleep(100);
        } catch (InterruptedException e) {
            e.printStackTrace();
        }
        stock.put(productId,stockNum);
    }
}

  • Тест давления, результат все еще правильный, но скорость, как правило, не медленнее, чем без блокировки.

Опубликовано 952 оригинальные статьи · вона похвала 1820 · Просмотров 890,000 +

рекомендация

отblog.csdn.net/Dream_Weave/article/details/105415668
рекомендация