11/8/2023 0 Comments Setting defaults on fishbowl![]() In fact, bottlenecks show up in multiple places: This can quickly get out of hand as user load scales up. ![]() If we look at what happens on the backend for a portlet call, we quickly realize that a cache needs to be put in place.Įach user who requests the home page generates 6 concurrent requests to the portlet server and 6 requests to the content servers. The home page in particular has 6 content portlets on it as it provides a nice dashboard view of current news and content to the user. However, this alone was not enough to get the intranet’s home page fast enough for common use. Inherently, the portlet container implementation in WebCenter provides a performance benefit over ADF taskflows since portlets will render in parallel. Portlet Response Expiration CachingĪ vast majority of the site utilizes JSR 286 content consumption portlets to pull back and display content. List cachedMenu = (List)cache.get(userName+"_megaMenu_"+language+"_"+spaceName) NamedCache cache = CacheFactory.getCache(IntranetUtil.MEGAMENU_CACHE_NAME) Ĭache.put(userName+"_megaMenu_"+language+"_"+spaceName, megaMenu, IntranetUtil.CACHE_TIMEOUT) Picking a key for the cache became important since we needed to support the various features of our framework (personalization, multi-site/space, multi-lingual). Here is an example of caching the data structure representing the navigation. This reduced the service calls for a page from around 20 to 1 or 2 after the data was cached. To reduce this, we leveraged Oracle Coherence to cache as much application specific data as we could. In the un-cached implementation of the intranet site, a content page could end up making close to 20 service calls to UCM in order to construct everything that was needed. This dates all the way back to the time of Stellent where one of the main optimization points of any application that utilized the content server was to reduce the number of service calls that were being made. Since almost every aspect of the site from navigation to page content is driven by user contribution in WebCenter Content, there ends up being a lot of calls to the content server in order to retrieve all this information. ![]() In this instance we implemented 2 different types of caching to help improve page response time and also server capacity. It goes without saying, proper caching will get you the biggest improvement in site performance out of any other configuration you do. Part 2 will focus on web server settings and JVM tuning. Java Virtual Machine (JVM) tuning (part 2).We ran through a number of tweaks and changes in the course of the tuning but I wanted to highlight 3 things in particular. Page response time (make the business unit and business user happy).The goal of tuning any web application, such as WebCenter, is to provide enhancements in 2 main areas: ![]() I will be discussing Fishbowl’s Intranet/Portal in a Box framework, which includes the performance tuning configurations covered in parts 1 and 2 of this blog post.) Goals (Shameless Plug: I will be diving into more technical details on the implementation above in Session 414 on Thursday, April 26th at 8:30 AM during Collaborate 2012 in Las Vegas.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |