我们的团队使用visual studio online建立了持续集成。 我们已经尝试通过付费构建限制来提升我们的高级订阅,这是我们无法实现的。但是,构建时间异常缓慢。
构建将在队列中停留几分钟,然后需要几分钟才能运行[即使在测试时将Nuget软件包添加到源代码管理中]。
有没有办法加快Visual Studio Online的构建速度? 如果没有什么是好的选择?
我认为在Azure VM上接受或设置我们自己的持续集成服务器是最坏的情况回退。
答案 0 :(得分:33)
托管构建服务器存在一些缺陷。首先,他们总是清理没有保留的图像,因此您的源,包和以前构建的二进制文件不可用。因此,进一步加快构建速度的唯一方法是:
BuildInParallel
以允许MsBuild启用多个实例并启用MaxCpuCount=2
以使用托管代理上可用的多个CPU核心。它看起来像是在A3实例上运行,它可以让你玩4个内核。如果您同时使用BuildInParallel
和MaxCpuCount
,请不要将MaxCpuCount
上的核心数量最大化。OutputPath
将所有输出构建到单个目录。这与你能做的一样多。您无法在托管池中租用更快的VM,并且您无法使用MsBuild中的任何功能,这些功能将允许您执行增量构建或至少对工作区进行增量更新。并且无法删除代理的初始化时间和源检索。
要真正加快速度,您需要设置自己的构建服务器。使用在永久SSD上运行的DS Azure VM将为您带来最大的性能优势。使用您自己的VM,您可以执行以下其他操作:
您可以在强大的开发人员工作站或现有本地服务器上安装本地构建代理,而不是在Azure上托管代理。
还可以应用其他MsBuild提示和技巧来进一步提高MsBuild的性能。你可能会惊讶地发现你可以花多少时间来削减你的构建。