Der ICM Server-Cache bietet Anwendungsprogrammen die Möglichkeit, ein Objekt in allen ICM Server-Caches des SAP-Systems, in denen es liegt, zu invalidieren.
Soll ein Objekt invalidiert werden, müssen per RFC systemweit alle Server benachrichtigt werden, dass dieses Objekt nicht mehr aktuell ist und invalidiert werden muss. Wird das Objekt das nächste Mal angefordert, muss es neu in den Cache eingelagert werden.
Die Möglichkeiten, das zu invalidierende Objekt zu identifizieren, sind im Abschnitt Identifikation von Objekten beschrieben.
Die Invalidierung ist über Methodenaufrufe aus der ABAP-Anwendung (Web Dynpro Applikation, HTTP-Request-Handler,...) oder aber aus dem System heraus (ICM-Monitor) möglich.
Invalidierung über ABAP-Methodenaufrufe
Zur Invalidierung von im Cache liegenden Objekten stehen folgende statische Methoden der Klasse CL_HTTP_SERVER bereit, die Sie aus Ihrer Anwendung aufrufen können.
SERVER_CACHE_INVALIDATE
invalidiert das gegebene Objekt im ICM Server-Cache. Sie hat folgende Eingabeparameter:
ID des zu invalidierenden Objektes
Typ der ID
Scope (lokales oder globales Invalidieren). Lokal bedeutet, dass der Eintrag im Cache des ICM der Instanz, auf der die Methode aufgerufen wird, invalidiert wird. Global bedeutet, dass die Invalidierung des Eintrags für alle Instanzen des SAP-Systems vorgenommen wird.
SERVER_CACHE_INVALIDATE_LIST
invalidiert eine gegebene Liste von im Cache liegenden Objekten. Eingabeparameter sind somit eine Liste von IDs und der Scope
SERVER_CACHE_INVALIDATE_ALL
invalidiert alle Objekte des ICM-Server-Caches.
Invalidierung aus dem ICM-Monitor
Sie können auch aus dem ICM-Monitor (Transaktion SMICM) heraus einzelne Einträge oder den gesamten Cache invalidieren.