事务性发件箱模式如何解决微服务双写一致性问题
微服务中更新数据库后立即发布事件到消息代理的做法,一旦网络失败就会让已提交的事件永久丢失;若事件先发成功而数据库回滚,下游又会收到幻影事件。事务性发件箱模式要求把事件存入数据库的发件箱表,与业务数据在同一事务内提交,然后由独立进程负责转发到 RabbitMQ 或 Kafka。 这种双写漏洞在实际生产环……
专注于Android、Java、Go语言(golang)、移动互联网、项目管理、软件架构