Large portlets performance, Home page performance recommendations

Discussion created by Nika_Hadzhikidi Employee on Jan 17, 2014
Latest reply on Jan 28, 2014 by Robert Ensinger

Portlet design recommendations for Clarity:


Portlets are used to create custom Clarity pages.  Portlets should are not designed to be used as a replacement for proper reports.

The Clarity PPM Studio Guide describes the Architectural Design and Intent of a portlet, in summary:
•             Portlets are snapshots into CA Clarity PPM data and can consist of grids, graphs, or snippets of HTML.
•             While portlets do not replace CA Clarity PPM reports, they can be regarded as mini-reports.
•             You can create and publish portals across the enterprise.  Each portal page is comprised of a set of portlets – small windows of information presented as graphs, tables or web page snippets.

 When creating portlets, the following best practices should be applied:


Best Practices:

•             When utilizing aggregation over many rows of data, it is a best practice to create a separate summary portlet (e.g., one line portlet with totals.)  A summary portlet allows the aggregation to be done on the database instead of returning all rows to the grid portlet to calculate the aggregation. Page level filters provide for this capability.  Filter on the page, which will give you a summary portlet along with detailed rows with no summarization.

•             Set grid portlets to NOT auto display results.  If there is a business requirement that requires data to be shown when the page is first accessed, than a default filter can be set to limit the result set.

•             We recommend portlets be avoided on the home page, or designed properly to allow quick end user access. A poorly designed filter (or no filter at all) may launch a query returning all rows in the database while the end user is trying to login.  This time needed to execute a poorly filtered or poorly optimized query can prevent the end user from accessing their home page and look like a “system down” condition.

•             Minimize the amount of columns to return via your portlet.  Clarity has the ability to return as many columns as you want but there can be a performance impact for doing this.  Do not use portlets as an “ad-hoc” vehicle, (selecting many columns into the query that are not displayed, in case the user wants to add columns to their grid later).  This type of activity should be rather managed in Business Objects. We recommended to limit the amount of columns returned to 10-15 at the most.

•             You may want to restrict the use of the “configure” option on portlets on users’ home pages to further restrict the number of columns that can be displayed.

•             Label portlet fields not in use can be set to start with a “z” to group them in the bottom of the field list to prevent users from adding them as columns to sort on.