Salesforce 系统的核心限制(Governor Limits)Winter'27版本
Source: https://developer.salesforce.com/docs/atlas.en-us.apexcode.meta/apexcode/apex_gov_limits.htm
根据 Salesforce 官方《Apex Developer Guide》中最新的 Execution Governors and Limits 规范,底层的事务核心指标有了关键的上调,并且新增了专门针对现代化数据处理机制(如 Apex Cursors、Elastic Async Executions 等)的硬限制规则。
对比以往长期稳定的经典指标,主要变化与新增限制如下:
1. 堆大小(Heap Size)大幅提升
以往长期沿用的「同步 6 MB / 异步 12 MB」堆限制在最新文档中已大幅扩容:
-
同步事务堆大小(Synchronous Heap Size):提升至 10 MB(此前为 6 MB)。
-
异步事务堆大小(Asynchronous Heap Size):提升至 25 MB(此前为 12 MB)。
-
Email Services 堆大小:单独列出,上限为 50 MB。
2. 新增:Apex Cursors(游标与分页游标)限制
为了解决在内存中加载海量数据极易爆堆的问题,Apex 引入了 Apex Cursors(类似 SQL 游标机制)与 Pagination Cursors,官方文档为此设立了全套专属 Governor Limits:
| 游标指标维度 | 限制值 (Per-Transaction / 24-hr) |
| 单事务跨所有 Cursors 处理的最大数据行数 | 50,000,000 行(50 Million) |
单事务 Cursor.fetch 调用次数上限 |
100 次 |
| 单事务跨所有分页游标(Pagination Cursors)总行数 | 100,000 行 |
| 单事务分页游标实例数上限 | 50 个 |
| 单个分页游标每页单次拉取行数上限 | 2,000 行 |
| Org 24 小时最大 Apex Cursors 数量 | 10,000 个 |
| Org 24 小时新增游标及分页游标累计行数上限 | 100,000,000 行(100 Million) |
| Org 24 小时分页游标实例数上限 | 200,000 个 |
3. 新增:异步执行弹性缓冲(Elastic Asynchronous Apex Executions)
除了原有的每日基础配额(250,000 或用户许可数 × 200 取大者),新增了 DailyAsyncApexElasticExecutions 配额监控:
-
机制说明:允许组织在达到原本的 24 小时限额后,以受限流速(throttled rate)弹性排队处理 Batch Apex、Queueable Apex 和 future 方法。
-
弹性配额上限:等于组织的日常许可限额 + 额外补充的额度(额外额度取“日常基础限额”与 2,000,000 次执行 中的较小者)。
4. 长事务并发限制(Concurrent Transactions)改为动态计算
以往对于执行超过 5 秒的同步事务,Org 级别普遍为固定的 10 个并发连接上限。最新规范将其改为按 License 阶梯动态分配:
-
按照 100 个有效许可 : 1 个并发长事务 的比例进行 Org 级别换算。
-
下限与上限:最低保障 10 个,上限最多为 50 个。
5. 保持不变的核心基准
文档中以下经典指标仍与之前一致:
-
SOQL 数量:同步 100 次 / 异步 200 次;单次查询返回最大 50,000 条记录。
-
DML 数量:单事务 150 次;单事务总处理记录数上限 10,000 条。
-
CPU 时间:同步 10,000 毫秒 / 异步 60,000 毫秒。
-
Callout 超时与数量:单事务最多 100 次 Callout,累计最长等待时间 120 秒。
-
Queueable 排队:同步环境下单事务最多
System.enqueueJob50 次,异步环境下为 1 次。
浙公网安备 33010602011771号