Apex 公開コールバックの制限
| 説明 | 制限 |
|---|---|
| 過去 30 分間のすべての公開コールバックの最大累積使用量。 | 5 MB |
| 公開コールバックメソッド実装がコールバックを使用して EventBus.publish を再帰的にコールできる最大回数。 | 10 |
コールバック割り当てで使用される公開コールバックのサイズは、コールバッククラスインスタンスに含まれているオブジェクト (クラス変数オブジェクトなど) のサイズです。Apex クラスの文字の長さではありません。たとえば、「例: コールバック結果とイベントメッセージを相関させる公開コールバッククラス」の FailureCallbackWithCorrelation クラスでは、割り当てで計数されるサイズに寄与するオブジェクトは、クラス変数の MAX_RETRIES、retryCounter、および uuidMap です。累積使用量は、過去 30 分間に実行されたコールバックインスタンスのサイズの合計です。コールバックサイズの制限に達した場合は、クラス変数を使用して、コールバッククラスに保存されているオブジェクトのサイズを削減することを試みてください。あるいは、コールバック実行の再試行回数を制限するか、待機してからコールバックを再び使用してください。コールバックの制限はローリング制限で、過去 30 分間の使用量が反映されます。このため、ある時間が経過すると使用量が減少することがあります。使用量は、コールバックを使用してイベントを公開するたびに更新されます。
過去 30 分間のすべての公開コールバックの使用量を監視するには、limits リソースに対して REST API コールを実行し、返された応答の PublishCallbackUsageInApex 値を調べます。次に対して GET 要求を実行します。
1/services/data/v58.0/limits返された応答の PublishCallbackUsageInApex 値は、次の例のようになります。PublishCallbackUsageInApex 値は、最大使用量と残りの使用量のサイズをバイト単位で返します。
1"PublishCallbackUsageInApex" : {
2 "Max" : 5242880,
3 "Remaining" : 4011396
4 }