自升级到 9 后,TeamCity 的 msbuild 变慢
TeamCity slow msbuild since upgrade to 9
我们已经从 TeamCity 8 升级到 9,我们的 .net 构建者将他们的构建时间从 3 分钟增加到 15 分钟。
我们通过执行以下步骤开始调查此问题:
- 启用"Performance Montioring" 构建功能 - 我们看到磁盘 io 最大为 9%,cpu 最大为 40%(我们的构建代理有 2 个内核和 4gb 内存)
- 启用 .net 运行器日志以查看 msbuildbootstraper 中的某些内容是否花费大量时间。
经过 2 天的调查(我们检查了我们的防病毒软件、io、cpu 和内存,一切看起来都很好)我们开始怀疑 jetbrains 的 MsbuildBootstrap 占用了大部分时间。
我们进行了一次构建,使用 "msbuildbootstraper" 需要 32 秒 并将其切换到 "Command Line" runner 并调用 msbuild 我们自己,构建时间减少了至 5 秒 。
我们目前正在考虑降级到 teamcity 版本 8 或迁移到 tfs,然后再这样做 - 您对此 fixing/throubleshooting 有什么建议吗?
如上面link所说,将此配置添加到MSBuildBootstraper:
<configuration>
<runtime>
<generatePublisherEvidence enabled="false"/>
</runtime>
</configuration>
我们已经从 TeamCity 8 升级到 9,我们的 .net 构建者将他们的构建时间从 3 分钟增加到 15 分钟。
我们通过执行以下步骤开始调查此问题:
- 启用"Performance Montioring" 构建功能 - 我们看到磁盘 io 最大为 9%,cpu 最大为 40%(我们的构建代理有 2 个内核和 4gb 内存)
- 启用 .net 运行器日志以查看 msbuildbootstraper 中的某些内容是否花费大量时间。
经过 2 天的调查(我们检查了我们的防病毒软件、io、cpu 和内存,一切看起来都很好)我们开始怀疑 jetbrains 的 MsbuildBootstrap 占用了大部分时间。
我们进行了一次构建,使用 "msbuildbootstraper" 需要 32 秒 并将其切换到 "Command Line" runner 并调用 msbuild 我们自己,构建时间减少了至 5 秒 。 我们目前正在考虑降级到 teamcity 版本 8 或迁移到 tfs,然后再这样做 - 您对此 fixing/throubleshooting 有什么建议吗?
如上面link所说,将此配置添加到MSBuildBootstraper:
<configuration>
<runtime>
<generatePublisherEvidence enabled="false"/>
</runtime>
</configuration>