前 5 分钟最终成功的订单不到 1000 个,大概有多少人在一起抢呢?1 万?10 万?不太清楚。
但从扣款时间和订单支付时间来看,阿里云的程序内部还真复杂。
钱是充到帐户的,显示 2012-11-10 23:00:22 扣款。
订单的支付时间却是 2012-11-10 23:01:09 。
这中间有 40 多秒。不太清楚这 40 多秒内做了些啥。还有人钱扣了,但订单没支付成功。
如果是通过第三方接口来支付的,比如支付宝、网银,那还可以理解,因为有第三方,不可控。
但通过阿里云余额帐户来支付,却出现这种情况。从余额帐户扣款--修改订单状态--订单支付成功或失败,这不是一个事务么?后面的没完成,前面的操作不回滚?可能设计理念是,回滚有风险,钱只能扣,不能让程序自动回滚。先把钱扣了, 掌握主动权。
从帐户扣完款到订单支付成功,没通过第三方,在阿里云内部就用了40多秒。难不成在内部这两个动作也是分成独立的两块的,先扣了款,接下来的修改订单状态,是一个排队机制,所以要等待这么久。而排队等着修改订单状态的任务太多了,导致很多用户超时了,扣了钱,却没完成订单支付。
纯属瞎猜,淘宝的稳定性就好多了,而且并发订单完全不是一个级别。做为一个云服务提供商,这种情况让人不信服啊。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。