系统容错
看文章的内容,让我想到我们部门负责的短信服务,它就需要接入多个短信供应商,并且保证
高可用,因此它做了接口的抽象,一个发短信的接口可以支持指定供应商,不指定则根据系统
设置的权重加上触达率以及价格成本选择最合适当前业务的供应商进行发送,如果某个供应商
一直不可用,检测到也会暂时下线它,又由于公司的营销业务经常需要发大量的短信,因此我
们又实现了批量定时短信能力,服务自己本身也实现了限流,重试,同时为了节约成本配合业
务组压测,增加一个调试模式,此模式不会真正发送短信,也做了很多的数据面板可以分析哪
个供应商的性价比最高,错误率多少,错误分类占比等,然后回答下第一个问题,公司用到的
第三方服务都是比较成熟的产品,所以极少出现问题,如果出问题了,那么数据补偿或者业务
补偿机制可以搞一下,如果第三方可以替换,比如短信提供商,那就要支持重试后自动替换,当然,为了安抚客户,最好是用比较友好的报错提示,不要直接报服务端的错误给到用户。
Loading...