电商项目开发day8

发布时间:2026/9/26 12:19:57
电商项目开发day8 兄弟们好今天是秒杀项目第八天我上次更新时第五天的时候断更的原因也并不是因为我这几天都在休息相反其实我一直都有敲代码。那我简单说一下这几天的进度吧首先是第六天的时候我为开通了支付宝支付但是测试的时候使用沙箱模拟支付的感兴趣的小伙伴也可以自行去csdn查看相应文章我看了下有好多讲的其实都挺好的因此我自己就不卖弄了。然后第七八天就是压测为主了同时也一直在根据压测的结果尽可能的优化代码。那我说一下压测这一块吧最后得出的结果是这个项目的极限qps大概在1158左右也就是一秒能最多处理1158个用户请求秒杀持续三秒的话就能够处理大概3400多个用户请求想要达到1w的话就只能加机器了不过你自身服务器也会有影响比如你用jmeter或者你自己写java测试脚本对你电脑上的项目进行测试的时候你的电脑上的cpu不仅会被你的项目抢占同时也会被你的测试工具抢占导致你的测试结果会被相应拉低。我说一下优化改动吧我将redis的操作尽量放在一个lua脚本中用来减少网络请求的次数因为你redis处理的时间消耗无论在lua脚本还是外部代码中都是一样的但是你的网络请求则不一样lua脚本总共只有一次但是外部可能有多次因此这里也是一部分开销。不过我觉得这些对于真正的代码性能优化而言只能算是小头因为你一次可能也才1ms不到真正大头的反而是数据库那种几百毫秒的。并且我在秒杀热路径下已经尽可能的避免数据库查询操作将要进行先行验证的查询数据尽可能的先放在redis中比如秒杀开始时间这样能尽可能的优化性能。然后我为了防止redis崩溃我甚至还加了个布隆过滤器来防止大量不必要的伪造id来进行攻击不过我觉得redis一般应该不会崩吧毕竟他就是干这个来防止数据库崩溃的。因此我更觉得在这个模块中我的redis是起到一个优化秒杀性能的作用通过redis优秀的性能来减少数据库的操作次数。然后我还为MQ的异步下单添加了异步功能怎么说呢虽然说mq异步下单确实是能提升业务效率但是他发送消息的时候自己也是要收到broker的回应才能发送消息的因此我开启了异步化顺便增加了十五分钟订单没付款自动取消的功能这一部分就是利用延迟发送。因此到目前为止这个项目已经算是完成第一阶段了后续可能会根据需要持续改动大家拜拜。

关于本文作者

来自尧图内容编辑团队

尧图内容编辑团队 内容团队

尧图内容编辑团队

本文由尧图网络内容编辑团队执笔。团队由资深项目经理、前端工程师与设计师组成,所有内容均来自亲手交付的真实项目,先讲清问题、再给出可落地的解法。尧图深耕北京网站建设十年,服务过京华建材集团、智造科技等各行业客户,把一线经验沉淀为可复用的行业观察。

  • 十年建站经验,覆盖建材、制造、服务、文创等
  • 项目经理把关选题与事实准确性
  • 工程师与设计师联合撰写专业细节
  • 统一编辑规范,保证文风与排版一致
  • 每月复盘转化数据,迭代选题方向

延伸阅读

相关资讯与近期热门内容

深度阅读推荐

建站决策前值得细读的三篇

网站改版的5个关键决策
2024-08-12

网站改版的5个关键决策

什么时候该改版、改到什么程度、如何避免流量掉光,京华建材集团改版复盘给出答案。

获取专属建站方案

看完文章,把您的行业与预算告诉我们,免费获取一份量身定制的官网建设方案与报价。

立即免费咨询