プラットフォームキャッシュの内部
ローカルキャッシュ
プラットフォームキャッシュでは、ローカルキャッシュを使用することによってパフォーマンスを向上させ、ネットワークを効率的に使用し、アトミックトランザクションをサポートします。ローカルキャッシュはアプリケーションサーバのメモリ内のコンテナで、ユーザは要求中にローカルキャッシュとやりとりを行います。キャッシュ操作は、キャッシュレイヤと直接やりとりは行わず、ローカルキャッシュとやりとりします。
セッションキャッシュの場合、最初の要求時にすべてのキャッシュされた項目がローカルキャッシュに読み込まれます。その後のすべてのやりとりではローカルキャッシュを使用します。同様に、組織キャッシュの get 操作では、キャッシュレイヤから値を取得してローカルキャッシュに保存します。この値に対するその後の要求は、ローカルキャッシュから取得されます。put や remove などの変更���能な操作もすべてローカルキャッシュに対して実行されます。リクエストが正常に完了すると、変更可能な操作がコミットされます。
アトミックトランザクション
各キャッシュ操作は、それが実行される Apex 要求に依存します。要求全体が失敗した場合は、その要求内のすべてのキャッシュ操作がロールバックされます。実際にはローカルキャッシュを使用することによって、このようなアトミックトランザクションがサポートされます。
強制削除アルゴリズム
可能な場合、プラットフォームキャッシュでは、LRU アルゴリズムを使用してキャッシュから鍵が強制削除されます。キャッシュが制限に達すると、キャッシュが 100 % の容量に削減されるまで鍵が強制削除されます。セッションキャッシュを使用する場合、キャッシュはすべての既存のセッションキャッシュインスタンスから均等に削除されます。ローカルキャッシュでは LRU アルゴリズムも使用されます。パーティションのローカルキャッシュ最大サイズに達した場合、最近最も使用されていない項目がローカルキャッシュから強制削除されます。