Performance anti-patterns
Keep the anti-patterns in check from the time of design, before development starts. But, during development and testing if any anti-patterns are found, there are ways to tune it out of them in most cases. In some cases redesign or new architectural decisions may need to be made. So, good examples of them are too many portlets on a page; access control lists (ACLs) via deeply nested LDAP groups; poor caching configuration and poor cache control policies; excessive I/O operations; and client/server round-trips, wrong scope for WEF variables, poor usage of models and builders. On the other hand, if we consider the best practices in performance patterns, we will find caching benefits being realized and planned for; tested and tuned; consolidated I/O via optimization of queries or service calls; proper transaction isolation level; smaller session object; smaller render parameters; proper use of Ajax and REST; proper use of variable scope and caching in WEF.