作者 | beyondma
责编 | Elle
出品 | CSDN(ID:CSDNnews)
12月5日17点左右,许多地方的网友反应,支付宝出现账号无法正常支付、无法收到验证码、无法登录等一系列问题。
随即支付宝发表声明称“支付宝的机房网络出现了短暂抖动,影响了部分用户的使用体验。一切已经恢复正常,大家的资金和信息安全不会受一定的影响。”
支付宝可能没那么令人放心
我们大家都知道在前不久的10月29日,微信支付刚刚经历崩溃事件。此前阿里在“双十一”后官宣全部核心系统已经上云,所以事故也是对阿里系统容灾水平的一次真实检测,看来一向用稳定和高可用自我标榜的阿里云和支付宝可能没有想象中的那么令人放心。
笔者翻阅了一下材料,在去年的云栖大会上,蚂蚁金服副CTO胡喜还宣布支付宝使用的是“三地五中心”容灾系统——也就是在三个城市,安置五个机房。一旦其中一两个机房出现一些明显的异常问题,支付宝的底层数据库会将流量自动切换到正常的机房,在保证系统稳定运行的情况下,不丢失任何数据。而且当场立flag,模拟切断了2个模拟机房的网络通讯,在这样的情况下支付宝只用了26秒便重新恢复了运营,数据没有一点丢失。而本次事件用26分钟才将将恢复,可谓打脸了。
中心化支付体系之殇
笔者此前曾经介绍过,此类支付APP的中断事件深层次原因其实不是IT层面的问题,而是整个支付体系的问题。
因为中心化支付系统中的三个要素:连续性、实时性和交易结果信息同步(对帐操作),存在典型的不可能三角关系,而在互不信任的支付体系中,中心化的构架方式只会造成风险向弱势一方转移,中心节点作为规则制订的一方,肯定会首先保护自身权益,因此在极端情况下始终以客户利益优先的逻辑其实很难成立,在问题出现时中心机构的第一选择是保证自己不要受到损失,而不是快速恢复业务。
央行支付系统为何少有故障
中国现代化支付系统(China National Advanced Payment System,CNAPS )主要提供商业银行之间跨行的支付清算服务,是为商业银行之间和商业银行与中国人民银行之间的支付业务提供最终资金清算的系统。其实我们日常在进行跨银行间的转帐时都要用到央行的支付系统来进行,那么央行的支付系统为何几乎很少听到故障的情况呢?
这其实还是个资源投入的问题,首先运营支付系统是央行的法定责任:《中国人民银行法》第四条规定央行的职责中就包含了“维护支付、清算系统的正常运行”。
所以支付系统几乎是银行业内重视程度最高的系统——没有之一,系统服务能力几乎是系统负载能力的2-3倍,所谓的灾备水平其实本质还是资源冗余水平,前面正规军出现一些明显的异常问题,立刻就有对等的后备力量顶上去,有这样的资源配备水平其实想出重大问题都难。
而BAT等互联网公司基本已经将自己完全云服务化了,而这最大的好处就是让自己每颗CPU的使用率都接近100%,从而充分的利用资源,不过这样的坏处就是一旦有大面积的故障情况,后备力量难以补齐缺口。
区块链也并不完美
我们之前也提到过,区块链的确可以针对中心化支付系统的痛点,而且从现在来看中心化支付系统历史已经非常久远了,要知道我国在2012年以前使用的一代支付系统还是世界银行援助的项目。
但区块链体系也并不完美,因为“去中心化”、“安全性”和“性能”又成为了新的不可能三角。我们大家都知道去中心化的区块链中靠投票机制保证安全,而投票就有必要进行一定量的计算,需要在安全性和高性能之间取得微妙的平衡。
所以这是两个体系之争,不过可以预见的是后面还会不断有支付APP崩溃的事件,而我们的区块链数字货币也必将推出,市场选择有待观察。
声明:本文为作者投稿,版权归作者本人所有。
【End】
热 文推 荐