我们有一个带有 2 个 REST 端点的 API 应用程序和 2 个单独的应用程序,它们将(独立的)表写入同一个数据库,作为这 2 个 REST 端点的后端。您可以将其视为具有共享数据库服务器的近乎微服务的设置。
我们想使用 liquibase 来管理这两个应用程序中的每一个的数据库表,但找不到任何关于如何管理变更日志设置的最佳实践指南。
我们正在讨论的选项:
- 每个应用程序维护一个单独的变更日志表,其中包含它维护的表的记录。
- 好处 - 完全独立的设置,共享数据库是偶然的。
- 缺点 - 随着我们向同一数据库添加更多表/应用程序,变更日志表数量将会增加。需要记住用于开发的变更日志并查看用于调试的内容。
- 两个应用程序共享同一个变更日志表。
- Upside - 单一设置,可以使用 liquibase 默认值。易于查找和维护。
- 缺点 - 如果两个应用程序尝试同时部署,可能会发生冲突/等待。
有人可以向我指出这方面的最佳做法吗?