Azure DevOps 服务 |Azure DevOps Server |Azure DevOps Server 2022
本文介绍Azure DevOps工作跟踪操作和自定义设置的位置的操作和对象限制。 一些实际限制也适用。 自定义工作项类型(WIT)时,请考虑这些限制。
工作项和查询
以下限制适用于工作项和查询定义。
| Object | 限制 |
|---|---|
| 每个工作项的附件数 | 100 |
| 附件大小 | 60MB |
| 长文本字段 | 1M 个字符 |
| 查询执行时间 | 30 秒 |
| 查询结果 | 20,000 项 |
| 查询长度 | 32,000 个字符 |
| 每个文件夹的共享查询 | 999 个查询 |
| 每个工作项的工作项链接 | 1,000 |
| 每个工作项的工作项标记 | 100 |
| 工作项修订(REST API)* | 10,000 |
| 每个项目加入收藏夹的查询 | 200 个查询 |
*适用于 Azure DevOps 服务的 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 个级别 |
| 每个project Project仪表板 | 500,可在项目级别访问具有项目访问权限的任何人访问 |
| 每个团队的团队仪表板 | 500,特定于团队,用于跟踪团队特定的指标和数据 |
| 每个项目的 Teams 数 | 5,000 |
| 每个工作项的工作项标记 | 100 |
| 每个组织或集合的工作项标记 | 150,000 |
| 每个项目的交付计划 | 1,500 |
| 每个工作项类型的模板 | 100 |
*每个积压工作项最多可以显示 10,000 个工作项,但可以定义的工作项数没有特定限制。 如果积压工作超过 10,000 个项目,请考虑添加团队并将一些工作项移动到新团队积压工作项。
提示
如果即将达到仪表板限制,可以执行以下作来减少其数量。
- 查看上次访问的日期或与团队成员进行检查,然后删除重复或未使用的仪表板。
- 导出数据,然后将旧仪表板存档。
- 通过将更多小组件添加到仪表板来合并和合并类似的仪表板。
- 使用对象限制跟踪器实时了解资源使用情况,包括仪表板。 此功能可帮助你主动管理限制并避免潜在问题。 有关详细信息,请参阅 Azure DevOps 中的
Introducing Object Limit Tracker。
其他限制
- 如果 已更改日期 超过一年,则已完成或关闭的工作项不会显示在积压工作和版块上。 你仍然可以使用查询列出这些项。 若要使项目显示在积压工作或板上,请稍作更改以重置显示时钟。
- 避免嵌套同一类型的积压工作项。 有关详细信息,请参阅修复重新排序和嵌套问题。
- 避免将同一区域路径分配给多个团队。 有关详细信息,请参阅 多团队板视图的限制。
- 默认情况下,最初可以将工作项限制设置为较低的值。
以下作显示和对象限制适用于团队、工作项标记、积压工作和板。
| 组件 | 限制 |
|---|---|
| 积压* | 999 个工作项 |
| Boards | 400 张卡片 |
| 每个项目的仪表板 | 500 |
| 任务板 | 800 个工作项 |
| 每个项目的 Teams 数 | 5,000 |
| 每个项目组织或集合的工作项标记 | 150,000 |
| 每个工作项的工作项标记 | 100 |
| 每个工作项类型的模板 | 100 |
*每个积压工作最多可以显示 999 个工作项。 如果积压工作超过此限制,请考虑创建新团队并将部分工作项移动到新团队积压工作。
其他限制
- 避免嵌套同一类型的积压工作项。 有关详细信息,请参阅修复重新排序和嵌套问题。
- 避免将同一区域路径分配给多个团队。 有关详细信息,请参阅 多团队板视图的限制。
- 对于本地 XML 进程模型,可以通过编辑 ProcessConfiguration.xml 文件来修改积压工作和板限制。 有关详细信息,请参阅 进程配置 XML 元素参考。
GitHub集成
如果将项目与 GitHub 一起使用,则适用以下限制。
| 集成 | 限制 |
|---|---|
| Azure Boards Web UI | 每个连接 1,000 个连接的GitHub存储库 |
| Azure Boards API* | 每个连接 2,000 个连接的GitHub存储库 |
*有关详细信息,请参阅 GitHub 连接 - 获取GitHub连接。
项目
Azure DevOps服务将每个组织限制为 1,000 个项目,比之前的 300 个项目限制增加。 超过 300 个项目(如从Visual Studio连接到项目)可能会降级。
对于本地Azure DevOps Server,每个集合的项目没有硬性限制,但性能问题可能会出现,因为项目数接近 300。 某些体验(例如从Visual Studio连接到项目)可能会降级。
迁移到 Azure DevOps 服务时,观察最大限制为 1,000 个项目。 如果集合超出此限制,请拆分集合或删除旧项目。 有关详细信息,请参阅 从 Azure DevOps Server 到 Azure DevOps Services 的数据。
流程自定义
可以针对进程定义的对象数存在许多限制。 有关详细信息,请参阅自定义工作跟踪体验。
下表列出了可以为继承和托管 XML 流程模型定义的最大对象数。 实际限制也可能适用。
| Object | 继承 | 托管 XML |
|---|---|---|
| 每个组织的进程数 | 256 | 64 |
| 每个进程的工作项类型 | 64 | 64 |
| 每个组织的字段数 | 8192 | 8192 |
| 每个进程的字段数 | 1024 | 1024 |
| 每个工作项类型的字段 | 1024 | 1024 |
| 每个组织的选取列表 | 2048 | - |
| 每个列表的选取列表项 | 2048 | 2048 |
| 选择列表项字符长度 | 256 | - |
| 每个工作项类型的工作流状态 | 32 | 16 |
| 每个工作项类型的页面(选项卡) | 16 | 16 |
| 每页组数 | 32 | 32 |
| 每个工作项类型的规则数 | 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服务(如许多软件即服务解决方案)使用多租户来降低成本并提高可伸缩性和性能。 为了确保良好的性能并最大程度地降低服务中断的风险,Azure DevOps服务会限制个人可以消耗的资源,以及他们可以向某些命令发出的请求数。 当超过这些限制时,后续请求可能会被延迟或阻止。
大多数速率限制是通过 REST API 调用或非优化查询实现的。 有关详细信息,请参阅 速率限制 和 最佳做法,以避免达到速率限制。
迁移和导入限制
从本地Azure DevOps Server迁移到 Azure DevOps 服务时,可能会遇到以下大小问题:
- 数据库大小超过建议大小
- 超出建议大小的最大表大小
- 数据库元数据大小超过支持的大小
有关详细信息,请参阅从 Azure DevOps Server 到 Azure DevOps Services 和 Troubleshoot 导入和迁移错误。