面试遇到的秒杀问题,如果你简历没写但是面试问到了,你就会下去总结起来发牛客。。。

#面试经验谈# 秒杀系统
高并发:
水平扩展:Nginx流量分发
容器化(Docker,k8s)动态扩展
缓存优化:redis,CDN
限流算法:令牌桶和漏桶控制请求;
超卖问题:
分布式锁,
Redis和zookeeper
数据库开乐观锁
预扣库存,下单就扣掉,等付款在正式扣除库存。
刷单问题:
防刷单机制:用验证码防机器人,
用ddos,
数据加密
秒杀的架构:
用户请求 -> 网关层-> 服务层 -> 缓存层 -> 数据库层
                     ↓
                 消息队列 -> 异步处理#牛客AI配图神器##牛客激励计划#
全部评论
异步处理之后应该可以加一个补偿机制
1 回复 分享
发布于 04-01 02:14 辽宁
mark
点赞 回复 分享
发布于 05-07 23:35 江西
m
点赞 回复 分享
发布于 05-01 06:08 湖北
mark
点赞 回复 分享
发布于 04-29 03:29 陕西
mark
点赞 回复 分享
发布于 04-16 01:00 广东
mark
点赞 回复 分享
发布于 04-15 23:09 黑龙江
mark
点赞 回复 分享
发布于 04-14 19:26 湖北
mark
点赞 回复 分享
发布于 04-13 22:07 江苏
mark
点赞 回复 分享
发布于 04-12 23:14 广东
mark
点赞 回复 分享
发布于 04-10 17:22 湖南
mark
点赞 回复 分享
发布于 04-09 19:16 云南
mark
点赞 回复 分享
发布于 04-06 15:28 辽宁
m秒杀
点赞 回复 分享
发布于 03-31 20:53 山东
mark
点赞 回复 分享
发布于 03-29 10:44 广东
mark
点赞 回复 分享
发布于 03-28 14:11 江苏
mark
点赞 回复 分享
发布于 03-24 16:14 辽宁
mark超级无敌秒杀回答
点赞 回复 分享
发布于 03-23 18:04 北京
m
点赞 回复 分享
发布于 03-23 09:48 广东
mark
点赞 回复 分享
发布于 03-18 00:39 陕西
mark
点赞 回复 分享
发布于 03-15 18:44 广东

相关推荐

06-14 13:13
门头沟学院 Java
程序员牛肉:其实你这个问题千言万语是一句话:如何保证Redis跟数据库的一致性嘛。 各大公司都是有那种对账的。数据一致性校验平台这种中间件来去确保二者之间数据的一致性。 你可以这样理解,就是我们在这个平台上面呢会基于代码呢去实现一个规则,就是说我去监听数据库的binlog日志,然后会对binlog日志进行实时解析,跟目标数据源进行对比,以此呢来判断数据是否一致。 那放到你这个场景里面呢,就是说每当一个用户的优惠券落库的时候呢,那它会产生对应的log日志,我们就把这个日志捞出来,从log日志里面取出信息拼接Redis的对应key,查一遍Redis。 如果radius里面有数据,那就说明c口跟log的数据是一致的,如果没有就说明他们两个有一端不可信嘛,那你就选择可信的一端,对另外一端进行数据补偿就好。
点赞 评论 收藏
分享
评论
35
320
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务