先给结论:空中分账的稳定性不是靠嘴说的,是靠架构撑的。分布式处理加弹性扩容加多级容灾,三重保障兜底,流量再大也压不垮。你只管接单,分账的事它稳得住。
分账系统为什么会崩?因为大多数系统根本没扛过高压。
平时一天一百单,系统跑得好好的。一到大促,一天一万单涌进来,服务器扛不住了,分账计算排队了,转账接口超时了,钱卡在中间不上不下。更要命的是,一崩就是全部崩,不是慢一点的问题,是直接停摆。你这边客户付了款,那边钱分不出去,供应商不发货,用户要退款,代理商要说法,三头同时炸。
第一硬,分布式处理。不是一台服务器在扛所有订单,是上千个节点同时在跑。一万单进来,不是排队等一个人算,是一千个人同时算。每一笔分账独立处理,互不干扰,单笔失败不影响全局。别人崩的时候,它还在跑。
第二硬,弹性扩容。平时用十个节点就够了,大促来了自动扩到一百个。流量上去了资源跟着上,流量下来了资源自动回收,不浪费也不短缺。你不用提前猜流量,系统自己会伸缩,你永远不会因为"没预料到"而翻车。
第三硬,多级容灾。主节点挂了,备用节点零点五秒接管。数据不丢、分账不断、到账不停。就算遇到极端情况,系统也能在你察觉之前就完成切换。你的客户根本感觉不到任何异常,钱照样分,账照样跑。
扛得住还不够,还得扛得准。
很多系统不是崩了,是忙中出错。订单一多,分账金额算错、打款账户搞混、规则匹配失败。空中分账在高压下的准确率依然保持在百分之九十九点九九以上。因为每一笔分账都经过双重校验,计算完再核一遍,核完再打款,打款前再确认。忙不是出错的理由,系统不给自己找这个借口。
意味着你终于可以放心搞活动了。以前大促之前你最怕分账出问题,现在大促之前你只需要做一件事:把规则设好,然后去睡觉。一万单也好,十万单也好,系统稳稳地分,一笔不落,一分不差。
总结一句话:空中分账(http://www.xianzhitech.com/)的稳定不是运气好,是架构强。分布式扛流量,弹性扩容应波动,多级容灾防意外。不管业务多忙,它都稳得住。你只管往前冲,分账的事,它兜得住。
