IBM 6.1.X manual BS P HE R E P O R T AL V 6 T U N I N G G U I D E

Page 59

I D E N T I F Y I N G A F U L L F E T C H O F U S E R A T T R I B U T E S

How can you identify a second request is made to the directory server to retrieve the full set of user attributes? This is best done in a test or staging environment, rather than a live production environment, as it requires turning on tracing in the portal server, and this can impose a significant performance overhead. There are two traces to enable to look for this condition. The first one will show if the all the needed user attributes have been retrieved. If this is false, then a full fetch of the user information will occur. The second trace shows which attributes are being requested, so you can tell which ones should be added to the base set.

The two trace strings are:

com.ibm.wps.um.PrincipalImpl=all=enabled

com.ibm.wps.um.PumaProfileImpl=all=enabled

Enable those traces, and then execute the use case you wish to test. Then, look for this message in the trace.log:

PrincipalImpl 3 com.ibm.wps.um.PrincipalImpl isCompletelyLoaded false

This message may be output multiple times for the same user, so check all occurrences of it. If the value after isCompletelyLoaded is always true, then all the needed attributes have already been loaded, and no changes are needed. In this example, the value after isCompletelyLoaded is false, showing that the needed user attributes haven’t all been loaded. This will result in reloading all the user information from the user directory.

In that case, the trace will then typically show a call to reload the information for that user; this will tell the full distinguished name of the user whose information is being loaded from the user directory:

PrincipalImpl > com.ibm.wps.um.PrincipalImpl reload ENTRY id: cn=Yin Yin_000_992, cn=users,l=SharedLDAP,c=US,ou=Lotus,o=Software Group,dc=ibm,dc=com

Next, search above that in the trace for the getAttributes call, which will show the attributes the user has requested. It will look like this:

PumaProfileIm > com.ibm.wps.um.PumaProfileImpl getAttributes ENTRY id: cn=Yin Yin_000_992, cn=users,l=SharedLDAP,c=US,ou=Lotus,o=Software Group,dc=ibm,dc=com

…more user details follow…

isExternal: false[preferredLanguage, ibm-primaryEmail, countryName, displayName, givenName, cn, sn, uid]

The last line of the log entry shows the attributes being requested. In this case, the attributes being requested are [preferredLanguage, ibm-primaryEmail, countryName, displayName, givenName, cn, sn, uid]. Comparing this against the list of base user attributes, we can see that countryName is not in the base user attributes. Depending on whether the action being executed is a common one or not, consider adding this to the base set of attributes.

5 4

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 59
Contents IBM WebSphere Portal software family Your world. Your way IBM WebSphere PortalContents Web Server Tuning Portlet Caching General Information Figures About this Document Performance Tuning Overview Environment Considerations Base Portal Tuning How to get to Admin Console Application Server TuningInitial 1792 2048 ParameterLinux Solaris Windows 2003POWER5 Parameter Value Additional Information New Area Size Xmn320m Xmn256m Xmn768m Xmn1024mWeb Container Thread pool Size TimeoutSession Minutes Propagation Name ValueContext Pool Setting Default Value How to SetDefault Value Definition Used WebSphere Portal ServicesG I S T R Y S E R V I C E Cache Name Default Value Value UsedDatabase Database name Datasource name Database Tuning2 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 Parameter Value AIXTHREADSCOPE=SExecute Db2 update db config for idsldap using dbheap Directory Server TuningLinux Windows Additional Information Web Server TuningMinSpareThreads 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 Maxthreadtasks Required FixesJVM Initial and Maximum Heap Size WEB 2.0 Theme TuningNavigator Service Properties Parameter Setting UsedInternet Explorer Support of Vary Header Caching Proxy TuningParameter Setting Used Additional Information # set cache-control public for various static content # uncommented these to enable statics to be cachedExpiresActive On Portlet CachingRelease DB Parameter Many Pages TuningDB2 Database Tuning Cache Manager Service WEB Content Management Tuning Cache Name WebSphere Portal Service PropertiesWCM Object Cache JCR Text Search WCM Configuration ServiceDB2 Tuning Authoring Environment DB2 BP4 Cache Manager Service Properties Composite Applications TuningComposite 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 Value true Cluster TuningHow-To Set ThreadLimit ServerLimit Parameter Setting Additional Details Session Persistence To Database TuningVertical Cluster Tuning IBM Tivoli Directory Server Tuning Improving Portal Startup Performance Other Performance Tuning OptionsManaging 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 General Information Websphere Portal CachesBS 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 Pattern invalidation checking Cache Usage PatternsCache Instances Com.ibm.wps.ac.PermissionCollectionCache Portal Access Control Cache HierarchyCom.ibm.wps.ac.RolesCache Com.ibm.wps.ac.AccessControlUserContextCacheCom.ibm.wps.ac.ProtectedResourceCache Com.ibm.wps.ac.OwnedResourcesCacheCom.ibm.wps.ac.ExternalOIDCache Com.ibm.wps.ac.ApplicationRoleDescriptorCache Com.ibm.wps.ac.ChildResourcesCacheCom.ibm.wps.ac.ApplicationRoleOIDCache Com.ibm.wps.puma.DNOIDCache / com.ibm.wps.puma.OIDDNCache Com.ibm.wps.ac.ApplicationRolesForPrincipalCacheCom.ibm.wps.ac.ContainedRolesCache Com.ibm.wps.ac.ApplicationRoleChildrenCacheCom.ibm.wps.datastore.pageinstance.OIDCache Com.ibm.wps.datastore.PortalIdCache.vpPerLpid.cacheCom.ibm.wps.datastore.PortalIdCache.explicitLpidPerVP Com.ibm.wps.datastore.pageinstance.DynamicNodeCache Com.ibm.wps.datastore.pageinstance.DerivationCacheCom.ibm.wps.model.factory.SimpleCacheKey Com.ibm.wps.model.content.impl.ResourceCacheCom.ibm.wps.model.factory.ContentModelCache.live Com.ibm.wsp.mode.content.impl.TopologyCacheCom.ibm.wps.model.factory.URLMappingCache.live Com.ibm.wps.model.factory.ContentModelCache.isolatedCom.ibm.wps.model.factory.MultiModelCache.isolated Com.ibm.wps.model.content.impl.DynamicLoadCacheCom.ibm.wps.model.factory.URLMappingCache.isolated Com.ibm.wps.model.factory.MultiModelCache.liveWps.mappingurl.LookupCache Com.ibm.wps.services.vpmapping.VirtualPortalIDToRealmCacheCom.ibm.wps.model.impl.RuntimeClientMap.userAgent2client Wps.mappingurl.ContextsCacheWsrp.cache.portletdescription Com.ibm.wps.services.vpmapping.VirtualPortalIDToURLCacheCom.ibm.wps.services.vpmapping.URLToVirtualPortalIDCache Wsrp.cache.portlet.window Wsrp.cache.servicedescriptionWsrp.cache.portlet.instance Wsrp.cache.producer.userWp.te.transformationAssociationCache Wsrp.producer.portletpool.popsWsrp.producer.portletpool.ccps Processintegration.PendingTasksCacheCom.ibm.wps.policy.services.UserPolicyNodeCacheManager Com.ibm.wps.policy.services.PolicyCacheManagerCom.lotus.cs.services.domino.DominoService Com.lotus.cs.services.directory.wmm.WMMDirectoryServiceCom.lotus.cs.services.UserEnvironment PortletMenuCache Wp.xml.configitemsCom.ibm.wps.pe.portletentity Com.ibm.workplace.searchmenu.helper.SearchMenuCacheHelper RegistryServiceExample 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 WCM Cache Instances WEB Content Management CachesServices/cache/iwk/strategy WCM Item caching Services/cache/iwk/objectsummary WCM SummaryServices/cache/iwk/session Session Services/cache/iwk/moduleServices/cache/iwk/processing Advanced and Resour ces Services/cache/iwk/missed Missed Items Services/cache/iwk/menu MenuServices/cache/iwk/nav Navigator Services/cache/iwk/abspath Absolute pathUser cache Services/cache/iwk/libparent Library ParentServices/cache/iwk/draftSummary Draft Summary Appendix A. References Lee Backstrom, Document Coordinator Mark Alkins, ManagerBS P HE R E P O R T AL V 6 T U N I N G G U I D E