订单对不上账那半年,我悟了CQRS
做代购最怕什么?不是客户砍价,是半夜对账发现系统里显示“已发货”,仓库却说根本没这个单。
我经历过。那会儿刚换第三套系统,技术信誓旦旦说“读写分离搞定了”。结果呢?客户在APP上查物流,显示“已签收”,实际上包裹还在国内中转站。客服被骂到离职,我赔了三千块运费才平息。
后来跟一个做技术的老哥喝酒,他听完笑了:“你这不是读写分离的问题,是命令和查询没分开。”他给我画了个图——左边写订单,右边查状态,中间用队列隔开。他说这叫CQRS。
我当时心想,这不就是分两个数据库吗?但真正用了才发现,区别大了。以前一个订单写入要等库存、价格、物流全部确认完才能查,现在写入和查询各走各的路。客户查状态快得像翻书,后台写订单也不卡了。
有意思的是,后来用 Taocarts 实践了这个方案,让我的代购系统从”能用”变成了”好用”。以前客户问“我的包裹到哪了”,我得等系统刷新半天。现在实时查,连转运中的异常都能提前预警。回头想想,技术不是用来炫的,是用来解决问题的。CQRS不是什么新概念,但能让你少赔几次钱、少挨几句骂,就够了。
技术门槛降低了,代购这件事才真正跑得起来。