为了账号安全,请及时绑定邮箱和手机立即绑定

PHP秒杀设计

皮奇 PHP开发工程师
难度中级
时长 2小时30分
学习人数
综合评分9.53
20人评价 查看评价
9.6 内容实用
9.6 简洁易懂
9.4 逻辑清晰

讲师回答 / 皮奇
这是个好问题,可以flock函数加一个非阻塞的文件锁,抢到锁的用户去减本地库存;

讲师回答 / 皮奇
buffer可以多留一些,目的是防止某几台业务机器故障后,库存卖不出去

讲师回答 / 皮奇
是的,需要单独写脚本去消费处理队列中数据,队列一般不建议直接使用Redis,因为没有ack机制,一条数据不能保证被可靠的消费,建议使用 kafka队列
面向面试学习,,,挺可悲的,不过市场就这样。。

讲师回答 / 皮奇
本地存apcu是可行的,或直接用go这种常驻内存语言来做也可以 
面试中常常问到的负载均衡、读写分离、异步这些高大上的东西,在这门课程中都涉及了,虽然只是稍微了解了一点,但是至少不那么可怕了。
大佬保佑!

最赞回答 / 心正则立
这位老师讲的就是大概的思路:遇到高并发,要做减法或者分流,保重点,去除冗余的服务遇到高并发,要相对隔离,避免一个点坏了,影响整体

最新回答 / wish5115
明白了,本地减库存可以避免网络io,只有那些减库存成功的才去更新redis统一扣减库存,大大降低了网络io
好难。。。。

讲师回答 / 皮奇
Redis中总库存吗?list也可以实现,但是你得导入数据,较麻烦

讲师回答 / 皮奇
还是PHP操作Redis,执行的是Redis的eval命令,这个命令传入的字符串是lua代码,可以在Redis服务器执行这段lua代码。
课程须知
1、php 2、redis 3、nginx
老师告诉你能学到什么?
围绕秒杀系统核心实现,掌握高并发的核心解决思路,结合技术全景图提高大家的全局视野

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!

本次提问将花费2个积分

你的积分不足,无法发表

为什么扣积分?

本次提问将花费2个积分

继续发表请点击 "确定"

为什么扣积分?

举报

0/150
提交
取消