首页 > 解决方案 > 性能问题是否会随着变更集的增加而出现?

问题描述

我的公司使用 liquibase 来跟踪数据库更改。每天都会添加大约 100 个新的变更集。根据我对已经执行的变更集的理解,liquibase 再次计算校验和,并将其与 databasechangelog 表中的校验和进行比较,以查看校验和是否已更改,如果更改则给出校验和问题。

所以几个月后,当我已经执行了大量的变更集时,如果我添加一个新的变更集,这个计算已经执行的变更集的校验和并比较它们的过程是否会使新变更集的执行速度变慢或导致任何与性能相关的问题?

标签: liquibase

解决方案


我从来没有偶然发现 liquibase 的这种性能问题。

但我想你的问题引发了更多的问题:

  • 你认为什么是“慢”?
  • 当性能开始成为问题时,它真的是一个问题吗?
  • 也许您的应用程序架构有问题?

无论如何,将校验和与 DATABASECHANGELOG 表进行比较不应该花费很多时间 - 如果您有很多很多 changeSet,可能需要几秒钟。

根据 liquibase 文档:

其他时候,问题是 liquibase 更新耗时太长。在将 DATBASECHANGELOG 表的内容与当前的变更日志文件进行比较时,Liquibase 尝试尽可能高效,即使已经运行了数千个变更集,“更新”命令也应该只需要几秒钟即可运行。

但如果这几秒钟真的有问题,那么请考虑阅读这篇文章: 修剪变更日志文件


推荐阅读