一、什么是高并发
高并发(High Concurrency)是互联网分布式系统架构设计中必须考虑的因素之一,它通常是指,通过设计保证系统能够同时并行处理很多请求。高并发相关常用的一些指标有响应时间(Response Time),吞吐量(Throughput),每秒查询率QPS(Query Per Second),并发用户数等。
2025年05月28日
高并发(High Concurrency)是互联网分布式系统架构设计中必须考虑的因素之一,它通常是指,通过设计保证系统能够同时并行处理很多请求。高并发相关常用的一些指标有响应时间(Response Time),吞吐量(Throughput),每秒查询率QPS(Query Per Second),并发用户数等。
2025年05月28日
在高并发秒杀场景中,“超卖”是程序员最头疼的问题之一。本文从实战角度出发,对比分析Java防超卖的4大核心方案,结合真实代码案例与压测数据,助你选出最优解。
2025年05月28日
一年一度的双十一“剁手节”,那场面,简直比春运抢票还刺激!零点的钟声一敲响,亿万个手指头在屏幕上疯狂戳戳戳,眼睛瞪得像铜铃,就为了抢到那个心心念念的半价商品、限量版宝贝。
你有没有发现一个奇怪的现象?明明感觉服务器都快被挤爆了,新闻里也老说“XX电商平台交易额再创新高”,但很多时候,只要你手速够快、网速给力,还真就能抢到!而且,那个“已抢光”的提示也总能非常及时地跳出来,不会让你白高兴一场。
2025年05月28日
1、下单时需要判断两点:
(1)秒杀是否开始或结束,如果尚未开始或已经结束则无法下单
(2)库存是否充足,不足则无法下单
我们先通过代码实现上面的秒杀流程:
2025年05月28日
现象
1 压力测试过程中,发现被测对象性能不够理想,具体表现为: 进程的系统态CPU消耗20,用户态CPU消耗10,系统idle大约70
2025年05月28日
1、强一致性
如果要保证redis和数据库强一致性,那就要加锁。主要就是读写锁,读的时候不加锁,写的时候加锁。可以用redisson实现的读写锁。如果有一个线程在重新建立redis缓存,那么查询都阻塞。这样每次跟新数据,redis都会更新成最新的。
2、最终一致性
这个性能高,只要保证最后是一致的就行。通常的解决办法是通过中间件,比如mq,更新了就丢mq一条数据,然后消费数据更新redis。这样在极短的时间里会查询到旧数据,但是没有锁。
2025年05月28日
Redis是一个高效的内存数据库,它支持包括String、List、Set、SortedSet和Hash等数据类型的存储,在Redis中通常根据数据的key查询其value值,Redis没有模糊条件查询,在面对一些需要分页、排序以及条件查询的场景时(如评论,时间线,检索等),只凭借Redis所提供的功能就不太好不处理了。