Redis是一个单线程的服务,所以正常来说redis的命令是会排队执行的。incr
/decr
命令是redis提供的可以实现递增递减的命令。但是如果使用不当也会有线程安全问题。动手实践一下吧,用一个例子来模拟实现高并发场景的秒杀减库存业务。
软件环境:
-
JDK 1.8
-
SpringBoot 2.2.1
-
Maven 3.2+
-
Mysql 8.0.26
-
spring-boot-starter-data-redis 2.2.1
-
redisson-spring-boot-starter 3.1.5.6
-
开发工具
-
IntelliJ IDEA
-
smartGit
-
项目搭建
使用Spring官网的https://start.spring.io
快速创建Spring Initializr
项目
选择maven、jdk版本