系统设计层面
(1)业务链路分析,哪些是强依赖,哪些是弱依赖,做好区别以及异常捕获
(2)接口的限流,防止系统被打爆
(3)调用外围服务的超时时间,不能设置太长
(4)监控报警发现问题
(5)离线核对 全链路的核对 小时级别
(6)实时核对 通过mysql触发或者消息触发 实现数据变更进行核对
(7)每日业务报表,查看接口的访问量,错误码的数据量,等一些信息。评估机器是否够用
(8)链路切换,做好开关切换
业务架构方案
(1)从链路调用规避风险,比如 尽量减少下单外部调用,不让下单外调给订单打一些扩展信息
(2)规避一些不合理的诉求,比如导购询价多次为了满足一些场景,可以换一种方式展示方式,逻辑变的简单合理
(3)异常兜底方案要想好,比如打款按照业务处理有可能出现资损,使用兜底规则 规避风险
(4)使用搜素引擎做查询,满足各种业务场景 离线+在线,满足各种查询条件,接收延迟问题,合理设计 降低重构的风险
(5)方案选型 至关重要。,比如做搭建,如何扛住高并发 ,使用redis缓存,缓存大小严格控制,防止缓存太大 造成集群的拖垮,多机房部署,数据一致性处理。如何控制机器预算,可以使用近端包方式提供服务。如何控制发布风险,严格控制页面的生命周期,
(6)数据库的选型,单库单表,还是 单库多表 还是 分库分表,不同的业务量 选型肯定是不一样的。不能为了分库而分库。还有就是多机房部署的方式,
流程稳定性
(1)日常环境打通,尽量降低数据库发布的次数以及稳定性
(2)新业务的上线,严格按照不同环境都进行验证,防止不同环境开关数据不一致。