工作跟踪、进程和项目限制

Azure DevOps Services |Azure DevOps Server |Azure DevOps Server 2022 |Azure DevOps Server 2020

本文介绍 Azure DevOps 针对工作跟踪作和自定义设置的作和对象限制。 一些实际限制也适用。 自定义工作项类型(WIT)时,请考虑这些限制。

工作项和查询

以下限制适用于工作项和查询定义。

Object 限制
每个工作项的附件数 100
附件大小 60MB
长文本字段 1M 个字符
查询执行时间 30 秒
查询结果 20,000 项
查询长度 32,000 个字符
每个文件夹的共享查询 999 个查询
每个工作项的工作项链接 1,000
每个工作项的工作项标记 100
工作项修订(REST API)* 10,000
每个项目加入收藏夹的查询 200 个查询

*Azure DevOps Services 的 REST API 强制实施 10,000 个更新的工作项修订限制。 此限制限制通过 REST API 进行的更新,但不适用于来自 Web 门户的更新。

Object 限制
长文本字段 1M 个字符
每个工作项的工作项标记 100
每个工作项的工作项链接 1,000
每个工作项的附件数 100
附件大小* 4 MB 到 2 GB
查询执行时间 6 分钟
查询结果 20,000 项
查询长度 32,000 个字符
每个文件夹的共享查询 999 个查询
每个项目加入收藏夹的查询 200 个查询

*默认的最大附件大小为 4 MB。 可将最大大小更改为 2 GB

有关提高查询性能的信息,请参阅 定义查询的最佳做法

积压工作、看板、仪表板和团队

以下作和对象限制适用于团队、工作项标记、积压工作和板。

组件 限制
积压工作 10,000 个显示的工作项*
Boards 1,000 张卡片,不包括“建议”和“已完成”状态类别中的卡片
任务板 1,000 个任务
每个项目的区域路径 10,000
每个团队的区域路径 300
区域路径深度 14 个级别
每个项目的迭代路径 10,000
每个团队的迭代路径 300
迭代路径深度 14 个级别
每个项目的项目仪表板 500,可在项目级别访问具有项目访问权限的任何人访问
每个团队的团队仪表板 500,特定于团队,用于跟踪团队特定的指标和数据
每个项目的 Teams 数 5,000
每个工作项的工作项标记 100
每个组织或集合的工作项标记 150,000
每个项目的交付计划 1,500
每个工作项类型的模板 100

*每个积压工作项最多可以显示 10,000 个工作项,但可以定义的工作项数没有特定限制。 如果积压工作超过 10,000 个项目,请考虑添加团队并将一些工作项移动到新团队积压工作项。

提示

如果即将达到仪表板限制,可以执行以下作来减少其数量。

  • 查看上次访问的日期或与团队成员进行检查,然后删除重复或未使用的仪表板。
  • 导出数据,然后将旧仪表板存档。
  • 通过将更多小组件添加到仪表板来合并和合并类似的仪表板。
  • 使用对象限制跟踪器实时了解资源使用情况,包括仪表板。 此功能可帮助你主动管理限制并避免潜在问题。 有关详细信息,请参阅 Azure DevOps 中的对象限制跟踪器简介

其他限制

  • 如果 已更改日期 超过一年,则已完成或关闭的工作项不会显示在积压工作和版块上。 你仍然可以使用查询列出这些项。 若要使项目显示在积压工作或板上,请稍作更改以重置显示时钟。
  • 避免嵌套同一类型的积压工作项。 有关详细信息,请参阅修复重新排序和嵌套问题
  • 避免将同一区域路径分配给多个团队。 有关详细信息,请参阅 多团队板视图的限制
  • 默认情况下,最初可以将工作项限制设置为较低的值。

以下作显示和对象限制适用于团队、工作项标记、积压工作和板。

组件 限制
积压* 999 个工作项
Boards 400 张卡片
每个项目的仪表板 500
任务板 800 个工作项
每个项目的 Teams 数 5,000
每个项目的工作项标记 150,000
每个工作项的工作项标记 100
每个工作项类型的模板 100

*每个积压工作最多可以显示 999 个工作项。 如果积压工作超过此限制,请考虑创建新团队并将部分工作项移动到新团队积压工作。

其他限制

GitHub 集成

如果 将项目与 GitHub集成,则适用以下限制。

集成 限制
Azure Boards web UI 每个连接 1,000 个连接的 GitHub 存储库
Azure Boards API* 每个连接 2,000 个连接的 GitHub 存储库

*有关详细信息,请参阅 GitHub 连接 - 获取 GitHub 连接

项目

Azure DevOps Services 将每个组织限制为 1,000 个项目,比之前的 300 个项目限制增加。 当项目数量超过 300 时,某些体验(如从 Visual Studio 连接到项目)可能会降级。

对于本地 Azure DevOps Server,每个集合的项目没有硬性限制,但性能问题可能会出现,因为项目数接近 300。 某些体验(如从 Visual Studio 连接到项目)可能会降级。

迁移到 Azure DevOps Services 时,观察最大限制为 1,000 个项目。 如果集合超出此限制,请拆分集合或删除旧项目。 有关详细信息,请参阅将数据从 Azure DevOps Server 迁移到 Azure DevOps Services

流程自定义

可以针对进程定义的对象数存在许多限制。 有关详细信息,请参阅自定义工作跟踪体验

下表列出了可以为继承和托管 XML 流程模型定义的最大对象数。 实际限制也可能适用。

Object 继承 托管 XML
每个组织的进程数 128 64
每个进程的工作项类型 64 64
每个组织的字段数 8192 8192
每个进程的字段数 1024 1024
每个工作项类型的字段 1024 1024
每个组织的选取列表 2048 -
每个列表的选取列表项 2048 2048
选择列表项字符长度 256 -
每个工作项类型的工作流状态 32 16
每个工作项类型的规则数 1024 1024
每个工作项类型的作 1024 1024
每个规则的作 10 10
每个流程的项目组合积压工作级别 5 5
每个进程的类别 - 32
工作项附件大小 60MB 60MB

注意

对于托管 XML 进程模型,可以在所有 WIT 中指定的所有全局列表中定义大约 10,000 个项。 有关托管 XML 进程模型的其他限制和合规性要求,请参阅使用托管 XML 时自定义进程

下表列出了可以为继承和本地 XML 流程模型定义的最大对象数。 实际限制也可能适用。

Object 继承 本地 XML
每个集合的进程数 64 64
每个进程的工作项类型 64 64
每个集合的字段数 8192 1024
每个进程的字段数 1024 1024
每个工作项类型的字段 1024 1024
每个集合的选取列表 1024 空值
每个列表的选取列表项 2048 2048
选择列表项字符长度 256 空值
每个工作项类型的工作流状态 32 16
每个工作项类型的规则数 1024 1024
每个流程的项目组合积压工作级别 5 5
每个进程的类别 空值 32
每个进程的全局列表 空值 256
列出每个全局列表的项 空值 1024

注意

对于本地 XML 进程模型,可以为所有 WIT 中指定的所有全局列表定义大约 10,000 个项目。

实际限制

若要最大程度地减少性能问题,请按照以下指南作:

  • 限制你定义的自定义字段的数量。 所有自定义字段均计入进程、集合或组织的总配额限制。 可以为不同 WIT 中的同一字段指定不同的行为,例如规则和选择列表。

  • 限制为 WIT 定义的规则数量。 虽然可以为 WIT 创建多个规则;但当用户添加或修改工作项时,其他规则可能会对性能产生负面影响。

  • 限制定义的自定义 WIT 数量。

  • 限制定义的可报告字段的数量。 可报告字段可能会影响数据仓库的性能。

工作项规则验证超过 SQL 限制

每个项目定义一个 SQL 表达式,以便在创建或更新工作项时验证工作项。 此表达式随着为项目中所有工作项类型指定的规则数量而增长。

字段的每个行为限定符都会增加子表达式的数量。 嵌套规则、仅适用于转换的规则,或针对另一个字段的值设置的规则将更多条件添加到 IF 语句。

当用户保存工作项时,系统将验证与该工作项类型字段关联的所有规则。 表达式达到特定大小或复杂性后,SQL 将无法有效地计算它,并可能会生成错误。 若要解决此错误,请删除某些 WIT 或消除某些规则。

速率限制

Azure DevOps Services 与许多软件即服务解决方案一样,使用多租户来降低成本并提高可伸缩性和性能。 为了确保良好的性能并最大程度地降低中断风险,Azure DevOps Services 限制了个人可以使用的资源以及他们可以对某些命令发出的请求数量。 当超过这些限制时,后续请求可能会被延迟或阻止。

大多数速率限制是通过 REST API 调用或非优化查询实现的。 有关详细信息,请参阅 速率限制最佳做法,以避免达到速率限制

迁移和导入限制

从本地 Azure DevOps Server 迁移到 Azure DevOps Services 时,可能会遇到以下大小问题:

  • 数据库大小超过建议大小
  • 超出建议大小的最大表大小
  • 数据库元数据大小超过支持的大小

有关详细信息,请参阅将数据从 Azure DevOps 服务器迁移到 Azure DevOps Services排查导入和迁移错误