【发布时间】:2017-08-14 15:06:28
【问题描述】:
我有一个与 Flyway DB 迁移相关的问题。如何通常管理处理相同数据库模式的多个项目(微服务)。每个项目中的 Flyway 迁移脚本如果被其他项目修改,则不允许启动。他们是否有任何文档或最佳实践?
【问题讨论】:
-
理想情况下,每个微服务都应该管理自己的数据并拥有单独的数据库架构。在服务之间共享数据库架构是一种不好的做法,并且违反了微服务架构的规则。
-
虽然您的观点是有效的,即数据库模式应该由单个模块管理(包括迁移),但它可以由多个模块共享。具有共享数据库的微服务架构并不是什么新鲜事物,我相信它是在数千个用例中广泛使用的架构。
标签: flyway