const redis = require('ioredis'); const clienId = Math.random() * 100; //模擬客戶端Id const lockKey = 'testKey' try { const result = await redis.setnx(lockKey, clienId, 'EX', 10); //防止死鎖,10秒 if (result == 0) { return '系統繁忙!'; } //省略去庫存等業務操作 } catch (error) { } finally { if (clienId == await redis.get(lockKey)) { await redis.del(lockKey); } }