文章目录 概述 抢红包案例 案例关注点 工程结构 库表设计 Domain Dao层实现 Service层实现 使用全注解搭建SSM 开发环境 Controller层 View层 运行测试 超量发送的BUG验证 超发问题解决思路 代码 概述 电商的秒杀、抢购,春运抢票,微信QQ抢红包,从技术的角度来说,这对于Web 系统是一个很大的考验. 高并发场景下,系统的优化和稳定是至关重要的. 互联网的开发包括 Java 后台、 NoSQL、数据库、限流、CDN、负载均衡 等内容, 目前并没有权威性的技术和设计,有的只是长期经验的总结,但是使用这些经验可以有效优化系统,提高系统的并发能力. 我们接下来的几篇博文主要讨论 Java 后台、 NoSQL ( Redis )和数据库部分技术. 抢红包案例 主要分以下几大部分: 环境搭建 模拟超量发送的场景-DataBase(MySql5.7) 悲观锁的实现版本-DataBase(MySql5.7) 乐观锁的实现版本-DataBase(MySql5.7) Redis实现抢红包 案例关注点 模拟 20 万元的红包,共分为 2 万个可抢的小红包,有 3 万人同时抢夺的场景 ,模拟出现超发和如何保证数据一致性的问题。 在高并发的场景下,除了数据的一致性外,还要关注性能的问题 , 因为一般而言 , 时间太长用户体验就会很差,所以要测试 数据一致性 和