我是靠谱客的博主 留胡子香烟,最近开发中收集的这篇文章主要介绍Redis使用watch完成抢购功能(基础版)Redis使用watch完成抢购功能(基础版),觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

Redis使用watch完成抢购功能(基础版)

Redis使用watch实现抢购功能有如下优点:

1、选用内存数据库Redis来实现抢购,速度极快

 2、使用watch,采用乐观锁,不采用悲观锁,因为等待时间非常长,响应慢,会迅速增加系统资源占用

3、不使用队列,因为并发量会使内存数据库资源瞬间爆炸

开始此功能前,先简单了解几个此功能需要用到的Redis事物命令:

1MULTI 开始一个事务

2EXEC执行所有事物块内的命令

3WATCH 监视一个(或多个) key,如果在事务执行之前这个(或这些) key被其他命令所改动,那么事务将被打断

 

代码使用watchKeys存储抢购商品数量,UUID随机生成模拟客户数据,successSet存储抢购成功的客户信息,failSet存储抢购失败的客户信息。

使用ExecutorService线程池newCachedThreadPool建一个定长线程池,可控制线程最大并发数,超出的线程会在队列中等待。

Redis使用watch完成抢购功能(基础版)的代码地址:https://github.com/zhyiC/JetBrains/tree/master/redis




最后

以上就是留胡子香烟为你收集整理的Redis使用watch完成抢购功能(基础版)Redis使用watch完成抢购功能(基础版)的全部内容,希望文章能够帮你解决Redis使用watch完成抢购功能(基础版)Redis使用watch完成抢购功能(基础版)所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(35)

评论列表共有 0 条评论

立即
投稿
返回
顶部