脚本常见问题
常见问题
先主动写缓存,再入DB
性能问题:批量处理
逻辑问题:事务是保证一致性
强一致性
回滚的成本有点高
逻辑简单:异步处理
保证服务接口的幂等性,消息日志可以存储到本地文本、数据库或消息队列,再通过业务规则自动或人工发起重试
多个事务:分布式事务转换为多个本地事务,然后依靠重试等方式达到最终一致性
业务逻辑无法保证幂等,则要增加一个去重表或者类似的实现:发消息的时候消息并不立即发出,而是向消息库插入一条消息记录,然后在事务提交的时候再异步将消息发出,发送消息如果成功则将消息库里的消息删除
补偿机制:重试 或 回滚
方案
流程和事务别搞混,可以强一致,可以弱一致。
脚本注意点
重试机制
异常处理
人工干预机制
故障恢复
Last updated