Apex开发指南--一些limit的优化方法

本文介绍了Apex开发中如何优化SOQL限制、DML操作限制、堆大小限制和调用限制。建议使用批量语法、在可能的情况下使用before触发器代替after触发器,缓存查询结果,避免查询不必要的字段,合并DML操作,限制堆内存占用,并注意调用外部服务的次数。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

SOQL Limits

1,Always use bulk syntax (see Bulk Patterns later in this chapter).
2,Use before-triggers instead of after-triggers where possible (allows
modification of fields without a SOQL query and DML update).
3,Cache query results if your design allows.
4,Include fields from related objects in a single query.

DML Limits

There is a limit to the number of DML (Database) operations you can
perform within an execution context.
Combine DML operations on each object type into a single bulk
DML operation.
If your program flow calls for DML operations at different places in
your code, don’t perform the DML operation right away. Instead,
store a reference to the object in a list, set or Map. Then perform a
DML operation on all objects at once as the last part of your
operation.

Heap Size

The size of the heap is limited during an execution context.
When performing SOQL queries, only include fields you actually
need in the query. In particular, avoid querying for long text and rich
text fields.
Instead of storing objects in a static variable, store Object IDs, then
requery when needed.

Callouts

Apex code can call out to external web services. There is a limit to the
number of callouts in an execution context.
Don’t try using callouts in a trigger context – it’s not supported.
On a Visual Force page, you can often extend your limits by placing
content in an Iframe. Each Iframe runs in its own execution context.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值