高并发下的数据库并发控制策略
前言
在大流量的交易系统中,需要精心的设计和编排服务,才能支持业务操作。众所周知,开源数据库
的并发请求数是有限的,如何通过对业务流程进行设计,以扩大整个系统的服务能力是我们研究的方向。
业务场景
红包,秒杀等业务,大流量高并发交易系统需要面临的挑战。
控制策略
1. 数据库操作使用悲观锁,保证事务完整
待续..
2. 数据库操作使用乐观锁,保证数据完整性
待续..
3. 数据库操作同步在缓缓冲层buffer,异步到数据库层
待续..
4. 在应用层进行请求排队
待续..
5. 水平扩展,根据交易标识将请求分发到不同的server(应用+数据库)
待续..
6. 每个server进行流量控制,拒绝超载的请求
待续..
总结
在保证数据库完整性的前提下,提升数据库并发量,再通过服务编排使之承载更大的流量。