IBM 6.1.X manual Cache Usage Patterns, Pattern invalidation checking

Page 66

Cache Usage Patterns

Most WebSphere Portal caches follow the simple paradigm: if an entry already exists use it, otherwise add the entry. However, there are caches that behave differently. Each cache follows one of the following four patterns:

￿Pattern: regular

The regular pattern, described earlier, is the most common cache pattern:

value = cache.get(key); if (value == null) {

value = calculateNewValue(); cache.put(key, value);

}

￿Pattern: invalidation checking

Invalidating cache entries in a clustered environment is rather expensive. Therefore, portal caches often check whether the entry to be invalidated actually exists in the local cache.

test = cache.get(key); if (test != null) {

cache.invalidate(key);

}

Caches following this pattern follow the regular pattern for all but invalidation actions.

￿Pattern: multiple object types

Most caches hold only a single object type. When caches can hold multiple types, they follow the regular pattern for each of those types.

￿Pattern: cascading object types

This pattern is a special case of the ‘multiple object types’ pattern in that two or more object types that are queried in a certain order are stored in a single cache. There may be one cache hit along with a cache miss on a regular basis.

value = cache.get(keyA);

 

if (value == null) {

 

value = cache.get(keyB);

 

if (value == null) {

 

value = calculateNewValue();

 

cache.put(keyA keyB, value);

// either key could be used

}

 

}

 

6 1

W E BS P HE R E P O R T AL V 6 . 1 T U N I N G G U I D E

Image 66
Contents IBM WebSphere Portal IBM WebSphere Portal software family Your world. Your wayContents Web Server Tuning Portlet Caching General Information Figures About this Document Performance Tuning Overview Environment Considerations Base Portal Tuning Application Server Tuning How to get to Admin Console2003 ParameterLinux Solaris Windows Initial 1792 2048POWER5 New Area Size Xmn320m Xmn256m Xmn768m Xmn1024m Parameter Value Additional InformationTimeout Session MinutesWeb Container Thread pool Size Name Value PropagationHow to Set Context Pool Setting Default ValueWebSphere Portal Services Default Value Definition UsedG I S T R Y S E R V I C E Default Value Value Used Cache NameDatabase Tuning Database Database name Datasource name2 O N a I X S E T U P Db2 reorgchk update statistics on table all Db2 reorgchk current statistics on table all reorgchk.txt A C L E D a T a B a S E S E R V E R T U N I N G AIXTHREADSCOPE=S Parameter ValueExecute Directory Server Tuning Db2 update db config for idsldap using dbheapWeb Server Tuning Linux Windows Additional InformationMinSpareThreads MaxSpareThreads Operating System Tuning N U T W O R K T U N I N G How-to-Setndd -set /dev/tcpPARAMETER Value L a R I S C O N T a I N E R Required Fixes MaxthreadtasksParameter Setting Used WEB 2.0 Theme TuningNavigator Service Properties JVM Initial and Maximum Heap SizeCaching Proxy Tuning Parameter Setting Used Additional InformationInternet Explorer Support of Vary Header # uncommented these to enable statics to be cached # set cache-control public for various static contentPortlet Caching ExpiresActive OnMany Pages Tuning DB2 Database TuningRelease DB Parameter Cache Manager Service WEB Content Management Tuning WebSphere Portal Service Properties Cache NameWCM Object Cache WCM Configuration Service JCR Text SearchDB2 Tuning Authoring Environment DB2 BP4 Composite Applications Tuning Cache Manager Service PropertiesComposite Applications Best Practices BS P HE R E P O R T AL V 6 T U N I N G G U I D E Cluster Tuning Value trueHow-To Set ThreadLimit ServerLimit Session Persistence To Database Tuning Parameter Setting Additional DetailsVertical Cluster Tuning IBM Tivoli Directory Server Tuning Other Performance Tuning Options Improving Portal Startup PerformanceManaging the Retrieval of User Attributes BS P HE R E P O R T AL V 6 T U N I N G G U I D E Use of Dynamic Content Features Real-World Network Considerations BrowserMatch Mozilla/4 gzip-only-text/html Websphere Portal Caches General InformationBS P HE R E P O R T AL V 6 T U N I N G G U I D E BS P HE R E P O R T AL V 6 T U N I N G G U I D E Cache Usage Patterns Pattern invalidation checkingCache Instances Portal Access Control Cache Hierarchy Com.ibm.wps.ac.PermissionCollectionCacheCom.ibm.wps.ac.OwnedResourcesCache Com.ibm.wps.ac.AccessControlUserContextCacheCom.ibm.wps.ac.ProtectedResourceCache Com.ibm.wps.ac.RolesCacheCom.ibm.wps.ac.ExternalOIDCache Com.ibm.wps.ac.ChildResourcesCache Com.ibm.wps.ac.ApplicationRoleOIDCacheCom.ibm.wps.ac.ApplicationRoleDescriptorCache Com.ibm.wps.ac.ApplicationRoleChildrenCache Com.ibm.wps.ac.ApplicationRolesForPrincipalCacheCom.ibm.wps.ac.ContainedRolesCache Com.ibm.wps.puma.DNOIDCache / com.ibm.wps.puma.OIDDNCacheCom.ibm.wps.datastore.PortalIdCache.vpPerLpid.cache Com.ibm.wps.datastore.PortalIdCache.explicitLpidPerVPCom.ibm.wps.datastore.pageinstance.OIDCache Com.ibm.wps.datastore.pageinstance.DerivationCache Com.ibm.wps.datastore.pageinstance.DynamicNodeCacheCom.ibm.wps.model.content.impl.ResourceCache Com.ibm.wps.model.factory.SimpleCacheKeyCom.ibm.wsp.mode.content.impl.TopologyCache Com.ibm.wps.model.factory.ContentModelCache.liveCom.ibm.wps.model.factory.ContentModelCache.isolated Com.ibm.wps.model.factory.URLMappingCache.liveCom.ibm.wps.model.factory.MultiModelCache.live Com.ibm.wps.model.content.impl.DynamicLoadCacheCom.ibm.wps.model.factory.URLMappingCache.isolated Com.ibm.wps.model.factory.MultiModelCache.isolatedWps.mappingurl.ContextsCache Com.ibm.wps.services.vpmapping.VirtualPortalIDToRealmCacheCom.ibm.wps.model.impl.RuntimeClientMap.userAgent2client Wps.mappingurl.LookupCacheCom.ibm.wps.services.vpmapping.VirtualPortalIDToURLCache Com.ibm.wps.services.vpmapping.URLToVirtualPortalIDCacheWsrp.cache.portletdescription Wsrp.cache.producer.user Wsrp.cache.servicedescriptionWsrp.cache.portlet.instance Wsrp.cache.portlet.windowProcessintegration.PendingTasksCache Wsrp.producer.portletpool.popsWsrp.producer.portletpool.ccps Wp.te.transformationAssociationCacheCom.ibm.wps.policy.services.PolicyCacheManager Com.ibm.wps.policy.services.UserPolicyNodeCacheManagerCom.lotus.cs.services.directory.wmm.WMMDirectoryService Com.lotus.cs.services.UserEnvironmentCom.lotus.cs.services.domino.DominoService Wp.xml.configitems Com.ibm.wps.pe.portletentityPortletMenuCache RegistryService Com.ibm.workplace.searchmenu.helper.SearchMenuCacheHelperExample Scenarios BS P HE R E P O R T AL V 6 T U N I N G G U I D E R T a L S W I T H L O N G S E S S I O N T I M E O U T S BS P HE R E P O R T AL V 6 T U N I N G G U I D E Services/cache/iwk/objectsummary WCM Summary WEB Content Management CachesServices/cache/iwk/strategy WCM Item caching WCM Cache InstancesServices/cache/iwk/module Services/cache/iwk/processing Advanced and Resour cesServices/cache/iwk/session Session Services/cache/iwk/abspath Absolute path Services/cache/iwk/menu MenuServices/cache/iwk/nav Navigator Services/cache/iwk/missed Missed ItemsServices/cache/iwk/libparent Library Parent Services/cache/iwk/draftSummary Draft SummaryUser cache Appendix A. References Mark Alkins, Manager Lee Backstrom, Document CoordinatorBS P HE R E P O R T AL V 6 T U N I N G G U I D E