暂无搜索历史
2022年双十一前夜,某电商平台的全链路压测进入最终阶段。当模拟订单量打到每秒10万笔时,团队信心满满——毕竟Kafka集群已经经过了两轮扩容,所有配置都经过了...
登上服务器一看,Eureka Server的进程不见了。查看日志,发现是内存泄漏导致OOM崩溃。
2019年,我们的文件存储用的是NAS(网络附加存储),所有服务器挂载同一个NAS目录。
我登录服务器,用grep查日志。结果发现日志分散在8台机器上,每台机器的日志格式还不一样。花了2小时才找到报错的那条日志,又花了2小时才定位到原因——一个第三方...
后来算了一下,那2个小时的停机损失超过200万。从那以后,我对缓存的理解深入了很多。
50个线程处理10万条,需要6000秒。更关键的是,每个任务还要往另一个队列里塞数据,那个队列也是无界的。
最初用的是TCC模式,每个服务都要实现try/confirm/cancel三个接口。开发量巨大,而且每次新增一个步骤,所有相关的补偿逻辑都要改。
2018年,后端团队修改了一个返回字段的名字,把userName改成了username。
2020年,我们的后台管理系统出了一个权限漏洞:普通运营人员通过修改URL参数,直接访问了管理员的操作页面,把一个下架的商品重新上架了。
多活架构不是银弹,复杂度很高。在决定做多活之前,先评估业务重要性和你愿意付出的成本。
当时的实现方案非常简单——写了一个定时任务,每5分钟扫描一次数据库,把过期的优惠券状态改为"已过期"。
用户点击支付后,因为网络抖动,前端没有收到响应,于是用户又点击了一次。两个支付请求同时到达后端,系统扣了两次款。
后来我们才知道,Redis恢复后业务恢复,但因为没有做好熔断和限流,系统在故障期间完全失去了自我保护能力。
活动上线10分钟,1元商品被刷走了8000份,公司损失80万。更要命的是,真正的用户在社交平台上骂我们"黑幕"。
2017年,我负责的优惠券系统出了一个Bug:用户领券时没有加锁,导致同一个用户同时领取了多张券。
财务那边说订单金额和财务对账对不上,让我们查。我花了整整一个通宵,逐条对比两个系统的数据库,发现是同步脚本漏跑了一批数据。
后来用上ElasticSearch后,搜索时间降到了100毫秒以内,转化率提升了30%。
当时库存只剩100件,但一下卖了300件。供应商那边打电话过来问责,财务也算不出来到底多发了多少货。
开发团队排查后发现,问题出在数据库的自增ID上。由于订单表数据量太大,他们采用了分库分表策略,将订单数据分散到16个数据库实例。每个数据库实例配置了不同的自增起...
暂未填写学校和专业
暂未填写个人网址
暂未填写所在城市