首页
学习
活动
专区
圈层
工具
发布
首页标签高并发

#高并发

三马代驾实战:发版不丢请求,排空、优雅退出与渐进预热

用户2456682

每次发版都有一小撮用户报"请求失败",比例不高,但稳定复现——问题不在代码,在滚动发布的那几十秒:实例已经被摘掉流量,手里还没处理完的请求却被直接杀死;或者注册...

1000

三马代驾实战:跨库更新怎么办,分布式事务三种方案的取舍

用户2456682

下单要同时扣库存、建订单、加司机余额,三张表分在三个库——跨库更新没有本地事务可用,这是分布式事务问题真正的起点。三马代驾的资金链路踩过"钱扣了单没建"的坑,本...

1800

三马代驾实战:死锁排查三步走,从 InnoDB 日志到统一加锁顺序

用户2456682

凌晨两点的告警里,最让人摸不着头脑的一种是 Deadlock found when trying to get lock——两个事务互相等待对方释放锁,数据库只...

2700

三马代驾实战:下游一慢全站就慢,超时重试熔断降级四层防线

用户2456682

一次派单请求要串起派单、计价、消息推送三个下游。任何一个卡住,用户的请求就跟着卡住。没有超时的调用是最大的风险,而有超时没重试、有重试没退避、有熔断没降级,都会...

2000

三马代驾实战:改库必删缓存?我们用延迟双删和 binlog 收口一致性

用户2456682

更新一条数据,顺手把缓存删掉——几乎所有团队都是这么写的。但当三马代驾的司机结算金额在缓存里"旧了一分钟"被投诉时,我们才把缓存与数据库的一致性当成一个正式问题...

700

三马代驾实战:定时任务的三道防线,分片、幂等与补偿

用户2456682

定时任务是最容易被低估的组件:写个 cron、循环跑一遍,看起来谁都会。但在三马代驾的生产环境里,超时关单、对账补偿、报表统计全部跑在定时任务上,一旦重复执行或...

1800

三马代驾实战:消息队列丢消息、重复消费与乱序,三类问题三套解法

用户2456682

派单、支付、结算这几个关键动作,在三马代驾的架构里全都依赖消息队列解耦。队列一抖,丢一条消息,用户侧看到的就是"订单状态卡住"。这篇文章把我们在生产上踩过的消息...

1000

三马代驾实战:2.1亿行订单表怎么拆,分库分表的时机与平滑迁移

用户2456682

三马代驾的订单表在两年里从 300 万行涨到 2.1 亿行,DBA 第一次提"该分表了"时被我们驳回了——那时候慢查询占比不到 0.2%。半年后大促一来,单表写...

1600

三马代驾实战:Redis 分布式锁四层演进,从 SETNX 到最后防线

用户2456682

三马代驾在分布式锁上踩过的坑足够写一篇事故集:先用 SETNX + EXPIRE 两条命令,进程崩溃在两句之间导致锁永远不释放;后来改原子命令,又因为业务执行超...

1600

三马代驾实战:一次下单跨六个服务,5 分钟定位靠这三板斧

用户2456682

三马代驾的一次下单要穿过网关、风控、定价、派单、支付、通知六个服务,外加两个 MQ 和三次数据库写。有一次司机反馈"付了钱没收到接单确认",两个值班同学翻日志翻...

1400

三马代驾实战:容量不是感觉出来的,全链路压测怎么做才作数

用户2456682

三马代驾经历过一次"最贵的教训":某年跨年活动前,所有人凭感觉拍了一个数——"峰值撑住 3 倍日常就行",结果跨年夜第一个小时实际流量是日常的 7.2 倍,派单...

900

三马代驾实战:缓存击穿、雪崩、穿透,三类问题三套治法

用户2456682

三马代驾的缓存曾经在早高峰出过一次小事故:司机端"附近车辆"接口 5 分钟内 RT 从 30ms 涨到 900ms,数据库连接池一度打满。事后复盘,起因是一个运...

1600

三马代驾实战:慢 SQL 治理四步法,从慢日志到发布卡点

用户2456682

三马代驾的派单服务去年有过一段黑暗期:高峰期总有司机反馈"点接单转圈",监控上数据库 CPU 却不算高。后来一条慢日志把问题钉死了——派单候选查询在某个城市走了...

1600

三马代驾实战:灰度发布怎么做,入口分流、数据兼容与秒级回滚

用户2456682

三马代驾去年吃过一次发布事故:结算服务带着一个空指针直接全量上线,五分钟内所有司机的当日账单接口报错,回滚又因为配置不兼容花了二十分钟。那次之后我们把"能不能灰...

1200

三马代驾实战:网关限流 + 热点参数限流,把防刷做在入口

用户2456682

去年双十一前夜,三马代驾的派单接口被脚本刷了四十多万次:不是竞争对手,是有人拿脚本批量领取优惠券。那次事故没宕机,但正常司机的抢单请求被拖慢了两秒。之后我们把防...

1100

三马代驾实战:支付回调幂等、掉单补偿与退款不重复的完整链路

用户2456682

支付回调是代驾系统里容错率最低的入口:它直接决定钱有没有到账、券有没有退、订单能不能往下走。三马代驾接入第三方支付的第一年,吃过两次大亏——一次是渠道重发通知导...

4100

三马代驾实战:订单状态机 + 延迟队列,把超时关单做可靠

用户2456682

网约车业务里最容易出诡异 bug 的地方,往往不是高并发链路,而是订单状态。三马代驾早期的订单服务里,状态判断散落在十几个 service 中,"司机取消之后支...

2000

代驾就近派单实战:Redis GEO 召回、批量应答与改派兜底

用户2456682

代驾履约的临门一脚是派单:乘客发单之后,系统要把单子递到最合适的司机手上。递得不准,司机绕路过来乘客已经取消;递得不快,池子里的单没人接直到超时。三马代驾的派单...

2700

三马代驾实战(四):补贴风控三道闸,设备指纹、行程体检与限额延迟到账

用户2456682

拉新补贴是代驾平台增长最快也最烧钱的模块,同时是黑产最集中的入口。三马代驾在补贴风控上迭代了三个版本,第一版只靠手机号黑名单,被薅到怀疑人生;现在跑的这版把设备...

1900

三马代驾实战(二):长连接心跳、断线重连与消息补偿

用户2456682

前一篇聊了三马代驾系统的整体架构和三级派单,这次往细里抠一层:司机端和乘客端挂在 Netty 长连接上,手机进电梯、切后台、弱网闪断都是家常便饭,连接断了之后怎...

2600
领券