Service Fabric构建中的PDB

时间:2018-12-19 16:01:21

标签: azure-devops azure-service-fabric azure-pipelines

为什么在Azure DevOps中构建的Service Fabric模板默认具有将PDB从SF包中移出并阻止它们部署到群集的步骤?

就我而言,我希望它们包括在内,以便例外包括行号。

虽然我可以修改(或删除)这些PDB步骤,但我想知道为什么在我遗漏某些东西(例如我不熟悉的最佳实践)的情况下为什么这样做。

1 个答案:

答案 0 :(得分:1)

我不知道这里有一些严格的最佳实践,但这是我根据SF文档得出的个人结论。

部署


从部署的角度来看,最重要的程序包参数之一是程序包大小

它会影响:

  1. 执行以下操作所需的时间:压缩/上传/解压缩-拥有大量.dll文件将导致拥有大量.pdb(每个{{ 1}})。反过来,这会大大增加包装尺寸。大型程序包需要更多时间进行压缩,上载和解压缩。
  2. 存储空间消耗-听起来很明显,但是大包装会消耗更多的存储空间。这听起来微不足道,但是当您有10个服务时,每个包的大小约为100MB(未压缩大小),您已经消耗了1GB的存储空间。具有多个服务和多个服务的应用程序可能会导致大量消耗的存储空间。因此,每个MB都很重要。

您可以找到有关主题here的一些信息。

构建管道


从我的角度来看,将.dll文件复制到工件目录的原因很简单-默认模板假定您具有一些管理调试符号的过程,即您可以添加其他步骤并将其上传到Symbol服务器。