Azure DevOps Windows与Ubuntu托管的跨平台应用程序代理?

Azure DevOps Windows与Ubuntu托管的跨平台应用程序代理?,windows,ubuntu,azure-devops,azure-devops-hosted-agent,Windows,Ubuntu,Azure Devops,Azure Devops Hosted Agent,对于跨平台应用程序,是否有具体理由选择一个代理操作系统而不是另一个?我经常看到根据开发人员的操作系统偏好进行选择。今天早上,我创建了一个.net核心控制台应用程序,以及一个针对windows和ubuntu托管代理的管道 stages: - stage: windows jobs: - template: build.yml parameters: pool: windows-latest - stage: ubuntu jobs: - template: b

对于跨平台应用程序,是否有具体理由选择一个代理操作系统而不是另一个?我经常看到根据开发人员的操作系统偏好进行选择。今天早上,我创建了一个.net核心控制台应用程序,以及一个针对windows和ubuntu托管代理的管道

stages:
- stage: windows
  jobs:
  - template: build.yml
    parameters:
      pool: windows-latest 
- stage: ubuntu
  jobs:
  - template: build.yml
    parameters:
      pool: ubuntu-latest
我运行了好几次管道。windows构建时间与ubuntu相比要大得多。我能够在AzDO使用开箱即用的分析来获得一些见解:

我在内部分享了这一点,另一个开发人员尝试将管道切换到Ubuntu。他们发现运行时间大约减少了30%

实验后的问题:

由于操作系统架构的原因,有哪些类型的任务在Ubuntu和Windows上运行得更快

是否有可能对管道进行“评分”,以评估运行管道的最佳操作系统

建议在Windows上的Ubuntu代理上构建跨平台应用程序是否合理?这似乎可以减少构建时间,从而减少开发人员等待时间,减少托管并行作业的开销

建议在Windows上的Ubuntu代理上构建跨平台应用程序是否合理

谢谢分享。我已经测试了一些跨平台脚本,发现它们在Ubuntu代理上的运行比在Windows代理上的运行要少


因此,可以公平地说,如果你不关心代理操作系统,使用Ubuntu通常比使用Windows更省时。

我请求重新打开它。它不邀请基于意见的回应。这篇文章的第一句话没有征求意见,而是问:“有没有具体的理由……”。报告继续提供了我通过实验获得的证据,并指出这得到了独立实验的进一步支持。所有这些都不是基于意见的,也不需要基于意见的回应。我进一步细化了问题,以邀请基于事实的回答,并缩小了回答主题。