我们计划在一个事务中上传一些blob中的文件和Cosmos Db中的数据
在Azure Cosmos DB和Azure blob存储之间实现分布式事务是可能的吗?如果任何一个操作失败,那么其他操作也应该恢复。
如果不可能,那么有没有通过Azure组件实现此功能的理想方法?
发布于 2019-08-22 11:06:29
据我所知,没有这种跨多个azure组件的事务机制(如果是,可能只针对sql数据库)。
我的想法是:
1.使用Azure函数,请查看本例:Transactions in Azure Functions with multiple outputs。您可以使用Service Bus遵循@Mikhail Shilkov提到的解决方法。此link中的一些详细信息。
2.通过在一个try-catch作用域中删除所有业务,以编程方式实现yourself.Include - catch,如果捕获到任何异常,则在数据已经存在的情况下执行删除操作。
https://stackoverflow.com/questions/57589701
复制相似问题