币安API如何应对网络中断?

网络异常时如何保障不掉单?如何做到不宕机?

4 个回答

灵狐中年叛逆期选手
灵狐中年叛逆期选手回答于 12 月 11 日
最佳答案

例如像币安这样的顶级交易所,面对网络中断这类场景,早已经有一套成熟的解决方案。首先,他们采用的是多中心化的服务器部署,每个服务器都是可以独立对外提供服务的多活架构,一个节点挂掉了,请求可以自动被转发到其他节点;其次,他们的订单撮合系统都具备本地缓存的能力,在网络断开的瞬间,可以把订单先存储到本地数据库,等到网络恢复之后,再进行同步,这样就基本不会出现漏单的情况;最后,他们会用高可用集群 + 自动故障转移的组合方式,来保证服务的连续性。如果你在做数字货币相关网站的话,也可以借鉴这套思路,对核心的交易模块进行冗余备份,并引入异步处理 + 重试机制,这样系统的稳定性也会有非常大的提升。

链域逐浪者
链域逐浪者回答于 12 月 11 日

币安属于头部交易所,所以网络故障在所难免,但是币安也早就做好了完善的容错处理方案:多机房分布式部署+节点切换;订单异步确认机制+链路恢复重发;熔断策略。

向阳而居
向阳而居回答于 12 月 12 日

币安作为头部交易所,API层面是有高可用架构的,网络异常的时候会用多链路冗余实现节点的自动切换,订单也会走备用通道进行重试,同时服务端的熔断能防止雪崩式宕机,但是完全做到0丢单是很困难的,只能做好容灾。

币圈行星人
币圈行星人回答于 12 月 14 日

币安作为头部的交易所,在网络出现中断的情况下,有完备的高可用部署,多线路自动切换,节点冗余,本地缓存订单等措施可以减少影响。

不丢单的核心是本地的订单簿机制。用户下完单以后,记录到本地的队列中,等到网络连回来过,再将订单批量提交到撮合引擎。

不宕机:集群部署+负载均衡+故障转存系统拆分成N个子系统,任意一个系统出现宕机都不影响整体。

您的答案