SlideShare a Scribd company logo
Webcenter Application Performance
Tuning guide
Vinay Kumar
18-03-2014
Abstract
This paper describe generic tuning guideline for webcenter portal , Webcenter content, JRockit, Database
and Weblogic server
Table of Contents
Introduction............................................................................................1
Part 1: Tuning the Database ...................................................................2
Part 2: Tuning the JVM ( JRockit )............................................................4
Part 3: Tuning WebLogic Server (WLS)....................................................5
Part 4: Tuning Webcenter Servers...........................................................7
Tuning Webcenter Content (UCM).......................................................7
Tuning Webcenter Portal (Spaces) .......................................................9
Appendix...............................................................................................10
Introduction
This document describes basic performance concepts, how to measure performance, and designing
applications for performance and scalability .This will be useful for application built on Fusion
Middleware i.e. Webcenter Portal, Webcenter Spaces .
This tips and guide will be helpful in tuning the Webcenter applications. Use case is like, we are using
webcenter portal 11.1.1.8 and Wecenter content. Following guideline will used to optimize the portal
application. Application using Webcenter Portal and Webcenter content in backend. We are using
Oracle Database 11g R2.
Part 1: Tuning the Database
The first of tuning the Platform is to tune the database appropriately to enhance the performance. The
following 5 steps can be used for tuning the database.
 MDS Cache: MDS cache grows in size as metadata objects are accessed until it hits max-size-
kb. After that, objects are removed from the cache to make room as needed on a least recently
used (LRU) basis to make room for new objects. Unless time-to-live (TTL) is set, the MDS cache
continues to occupy the max-size-kb of memory. This can be tuned by increasing the size of
Buffer cache.
o SQL> DB_CACHE_SIZE=16 MB
 Shared Pool Size: Need to increase for improving the performance if the application uses stored
procedures and functions by setting memory_target. Also set the minimum value of shared pool
to 500MB which can grow and reduce based on demand.
o SQL> alter system set shared_pool_size=500MB
 Maximum Opened cursor: For using JDBC statement caching. Set the value to 1500.
 Shared Global Area (SGA): Set the SGA to 700 MB.
o SQL> alter system set SGA_TARGET=700MB scope=spfile
Part 2: Tuning the JVM ( JRockit )
As all the java processes are spun and maintained by the JVM, it needs to be tuned properly in order to
get the desired performance. The tuning can be done in terms of heap size allocated to different JVM
processes, Garbage collection and other run-time parameters.
 Tuning the Garbage Collection: Set the dynamic Garbage Collection mode to Throughput Mode.
Also we can reduce the memory fragmentation by selecting this GC mode.Use -
XgcPrio:throughput as the command line reference for JVM.
 Setting the Heap Size on 64-bit Systems: The heap allocation is a vital area which needs to be
carrefully tuned to increase the performance. As in demo environments, at most 1 or 2 users
will be using the systems, the memory allocation should be efficient, e.g. allocate the minimum
memory required for the application during startup and allow it to grow dynamically. Also the
heap size should be set such that the used heap is 50% of the maximum allocated heap.
Ex: Set -Xms=512 MB (for UCM and WC_Spaces) and -Xmx=1024 (for WC_Spaces) and -
Xmx=1536 (for UCM) in setDSSCustomDomainEnv.sh for USER_MEM_ARGS
 Setting the Nursery Size: Set -Xns=128m to increase the nursery size. This reduces the chances of
very frequent Garbage collections and long pause times. It is set to optimal value by default when
the GC mode is selected as throughput.
 Tuning Start Up Time: Add the argument -Djava.security.egd=file:/dev/../dev/urandom to
increase the startup time by restricting the OS from random number generation and instead
using a pseudo random number. Never use this option on an actual production environment
 Disabling Explicit Garbage Collection: Add the argument –XxnoSystemGC to avoid the
applications calling the system.gc() method which results in a performance degradation.
Part 3: Tuning WebLogic Server (WLS)
As the Applications are built and hosted on the WebLogic application server, the tuning of the WLS is an
essential part of the tuning process of the demos.
 Stuck thread corrective action:
o Set Max Stuck Thread Time to 600 sec.
o Set Stuck Thread Count to 3
o Set Failure Action to “Suspend this server for corrective action”
o Set the Auto killed and Auto restart to true at <server> → configuration → health
monitoring → set restart interval at 7200 and max restart times to 2.
 Set On-Demand deployment of WebLogic internal components instead of start-up. There are
many internal applications that are deployed during start-up. These internal applications
consume memory and require CPU time during deployment. This contributes to the
WebLogic. Server start-up time and base memory footprint. Since many of these internal
applications are not needed by every user, WebLogic Server has been modified to wait
and deploy these applications on the first access (on-demand) instead of always deploying
them during server start-up. This reduces start-up time and memory footprint. On the
Configuration: General page for each domain, you can specify whether to deploy internal
applications such as the administration Console, UDDI, and the UDDI Explorer on demand
(upon first access) instead of during server start-up.
 Use minimum logging and disable the HTTP and stdout logging. Reduce the logging volume by
changing the log level to warning/debug/error. Switched off domain broadcaster logs.
JMS and JDBC logging has been disabled. Access logs are also disabled.
 Tuning Network I/O for WebLogic:
o Reduce the Connection Backlog Buffering by reducing Accept Backlog Values to 50 from
300 so as to drop the backlogs on TCP requests because in Demo, not many TCP requests
will be incoming.
Environment → Servers → Configuration → Tuning → Accept Backlog=50
o Enable Java I/O. If the Enable Native IO parameter is not selected, the server instance
exclusively uses the Java muxer. This may be acceptable if there are a small number of
clients and the rate at which requests arrive at the server is fairly high. Under these
conditions, the Java muxer performs as well as a native muxer and eliminate Java Native
Interface (JNI) overhead. Since in demo environment, the numbers of clients are limited,
enabling Java I/O can increase performance.
Uncheck “Server → Configuration → Tuning → enable native I/O”
 Tuning JDBC:
o Turn off the property “test connections on reserve”.
o Set the initial connection pool size to 5.
o Increased statement cached size to 20 from 10.
o For the datasources (used by independent managed servers), enable “pinned to thread”
services.
 Use Pipelining and parallel processing in DBMS applications. DBMS are designed to work best
when very busy with lots of different things to do. The worst way to use a DBMS is as dumb file
storage for one big single-threaded application. If you can design your application and data to
support lots of parallel processes working on easily distinguished subsets of the work, your
application will be much faster.
 Tuning File Stores:
o Use Direct-Write synchronous write policy. It performs better than cache-flush write
policy.
o The Disabled write-policy option can dramatically improve performance, especially at
low client loads. However, it is unsafe because writes become asynchronous and data can
be lost in the event of Operating System or power failure.
 Tuning JMS:
o Paging Out Messages to free up memory. JMS servers automatically attempt to
free up virtual memory during peak message load periods. JMS message paging
saves memory for persistent messages, as even persistent messages cache their
data in memory.
o Specifying a Message Paging Directory: If a paging directory is not specified, then
paged-out message bodies are written to the default tmp directory inside the
servername subdirectory of a domain’s root directory. For example, if no
directory name is specified for the default paging directory, it defaults to:
bea_homeuser_projectsdomainsdomainnameserversservernametmp
where domainname is the root directory of your domain, typically
c:beauser_projectsdomainsdomainname, which is parallel to the
directory in which WebLogic Server program files are stored, typically
c:beawlserver_10.3.
o Tuning the Message Buffer Size Option: The Message Buffer Size option
specifies the amount of memory that will be used to store message bodies in
memory before they are paged out to disk. The default value of Message
Buffer Size is approximately one-third of the maximum heap size for the
JVM, or a maximum of 512 megabytes. The larger this parameter is set, the
more memory JMS will consume when many messages are waiting on queues
or topics.
Reduced it to 100MB (approx.)
Part 4: Tuning Webcenter Servers
In this chapter we will discuss on the tuning of both Webcenter Content (aka UCM) and Webcenter
Portal (aka Spaces) servers.
Tuning Webcenter Content (UCM)
1. Setting JRockit Virtual Machine (JVM) Arguments. JVM arguments are set in the
setDomainEnv.sh file.
 Heap size: If the system is overloaded, that is, garbage is collected or
“out of memory error” occurs frequently, then increase the heap size as
appropriate to your system's available physical memory.The parameter
is: -Xms512M -Xmx1536M -Xns512M
 This is an out-of-the-box setting.
 Garbage collector behavior: To maximize throughput in an application, set the
following JVM option for the application's garbage collector
behavior:
-Xgcprio:throughput (already set in Base Platform)
Djrockit.codegen.newlockmatching=true
This is an out-of-the-box setting.
 Security: The following JVM arguments improve performance of
Webcenter application's security layer.
-DUSE_JAAS=false -Djps.policystore.hybrid.mode=false
Djps.combiner.optimize.lazyeval=true
-Djps.combiner.optimize=true -Djps.auth=ACC
 Log output: This option reduces the log output in some Webcenter application
dependent components.
-Djbo.debugoutput=silent
2. Setting System Limit
To run a WebCenter application at moderate load, set the open-files-limit to 2048.
If you encounter errors, such as running out of file descriptors, then increase the
system limit. For example, on Linux, you can use this command:
ulimit -n 4096 (default is 1024)
3. Setting HTTP Session Timeout
To manage over resource usage, adjust the session timeout value, in minutes, in the
web.xml file manually. The following is a sample snippet of web.xml:
<session-config>
<session-timeout>
45
</session-timeout>
</session-config>
Tuning Webcenter Portal (Spaces)
In addition to above tunings, follow the below steps for tuning Webcenter Spaces.
1. Tuning Portlet Service -
For the Portlets service, 28 supported locales are defined out-of-the-box. Remove
the locales that are unnecessary for the application. If these properties are
modified, then post deployment, the adfconfig.xml must be edited manually.
2. Configure Portlet cache size
Change the following parameter in adf-config.xml manually
<adf-portlet-config>
<supportedLocales>
<cacheSettings enabled="true">
<maxSize>10000000</maxSize> {default value}
</cacheSettings>
<adf-portlet-config>
3. Configure portlet timeout
Modify the portlet timeout value in the adf-portlet-config element of the adf-config.xml
file. Default: 10 seconds, minimum: 0.1 seconds, maximum: 60 seconds. If you must modify these
properties, post deployment, you must edit adf- config.xml manually.The following is a sample snippet
of adf-config.xml:
<adf-portlet-config>
....
<defaultTimeout>5</defaultTimeout>
<minimumTimeout>2</minimumTimeout>
<maximumTimeout>100</maximumTimeout>
</adf-portlet-config>
Appendix
Related Reading and References
 Oracle Documentation
http://www.oracle.com/technology/documentation/index.html
 Oracle Fusion Middleware Administrator's Guide
http://www.oracle.com/technology/documentation/middleware.html
 Oracle Fusion Middleware Administrator's Guide for Oracle Webcenter
 http://www.oracle.com/technology/documentation/database.html
 Oracle Database Performance Tuning Guide
 Oracle Database Administrator's Guide
http://www.oracle.com/technetwork/middleware/weblogic/documentation/index.html
 Oracle Fusion Middleware Performance and Tuning for Oracle WebLogic Server
http://download.oracle.com/docs/cd/E21764_01/core.1111/e10108/toc.htm
 Oracle JRockit Java Virtual Machine (JVM)
 "Welcome to Oracle JRockit" at
http://download.oracle.com/docs/cd/E13150_01/jrockit_jvm/jrockit/webdocs/index.html
 "First Steps for Tuning the Oracle JRockit JVM " at
http://download.oracle.com/docs/cd/E13150_01/jrockit_jvm/jrockit/geninfo/diagnos/bestpractices.html
 "Tuning the Memory Management System" at
http://download.oracle.com/docs/cd/E13150_01/jrockit_jvm/jrockit/geninfo/diagnos/memman.html#wp1087125
 "About Profiling and Performance Tuning" at
http://download.oracle.com/docs/cd/E13150_01/jrockit_jvm/jrockit/geninfo/diagnos/about_prof_perftune.html

More Related Content

What's hot

Weblogic security
Weblogic securityWeblogic security
Weblogic security
Aditya Bhuyan
 
WebLogic Deployment Plan Example
WebLogic Deployment Plan ExampleWebLogic Deployment Plan Example
WebLogic Deployment Plan Example
James Bayer
 
Weblogic introduction
Weblogic introductionWeblogic introduction
Weblogic introduction
Aditya Bhuyan
 
HTTP Session Replication with Oracle Coherence, GlassFish, WebLogic
HTTP Session Replication with Oracle Coherence, GlassFish, WebLogicHTTP Session Replication with Oracle Coherence, GlassFish, WebLogic
HTTP Session Replication with Oracle Coherence, GlassFish, WebLogic
Oracle
 
WebLogic Server Work Managers and Overload Protection
WebLogic Server Work Managers and Overload ProtectionWebLogic Server Work Managers and Overload Protection
WebLogic Server Work Managers and Overload Protection
James Bayer
 
Oracle WorkManager
Oracle WorkManagerOracle WorkManager
Oracle WorkManager
Giampiero Cerroni
 
Datasheet weblogic midvisionextensionforibmraf
Datasheet weblogic midvisionextensionforibmrafDatasheet weblogic midvisionextensionforibmraf
Datasheet weblogic midvisionextensionforibmraf
MidVision
 
Web site optimization
Web site optimizationWeb site optimization
Web site optimization
Sunil Patil
 
Weblogic server administration
Weblogic server administrationWeblogic server administration
Weblogic server administration
bispsolutions
 
Oracle Web Logic server
Oracle Web Logic serverOracle Web Logic server
Oracle Web Logic server
Rakesh Gujjarlapudi
 
weblogic perfomence tuning
weblogic perfomence tuningweblogic perfomence tuning
weblogic perfomence tuning
prathap kumar
 
Oracle WebLogic Server Basic Concepts
Oracle WebLogic Server Basic ConceptsOracle WebLogic Server Basic Concepts
Oracle WebLogic Server Basic Concepts
James Bayer
 
WLST
WLSTWLST
JPA and Coherence with TopLink Grid
JPA and Coherence with TopLink GridJPA and Coherence with TopLink Grid
JPA and Coherence with TopLink Grid
James Bayer
 
Postgres the hardway
Postgres the hardwayPostgres the hardway
Postgres the hardway
Dave Pitts
 
SQL Server Wait Types Everyone Should Know
SQL Server Wait Types Everyone Should KnowSQL Server Wait Types Everyone Should Know
SQL Server Wait Types Everyone Should Know
Dean Richards
 
Sql server backup internals
Sql server backup internalsSql server backup internals
Sql server backup internals
Hamid J. Fard
 
SharePoint 2013 Performance Analysis - Robi Vončina
SharePoint 2013 Performance Analysis - Robi VončinaSharePoint 2013 Performance Analysis - Robi Vončina
SharePoint 2013 Performance Analysis - Robi Vončina
SPC Adriatics
 

What's hot (18)

Weblogic security
Weblogic securityWeblogic security
Weblogic security
 
WebLogic Deployment Plan Example
WebLogic Deployment Plan ExampleWebLogic Deployment Plan Example
WebLogic Deployment Plan Example
 
Weblogic introduction
Weblogic introductionWeblogic introduction
Weblogic introduction
 
HTTP Session Replication with Oracle Coherence, GlassFish, WebLogic
HTTP Session Replication with Oracle Coherence, GlassFish, WebLogicHTTP Session Replication with Oracle Coherence, GlassFish, WebLogic
HTTP Session Replication with Oracle Coherence, GlassFish, WebLogic
 
WebLogic Server Work Managers and Overload Protection
WebLogic Server Work Managers and Overload ProtectionWebLogic Server Work Managers and Overload Protection
WebLogic Server Work Managers and Overload Protection
 
Oracle WorkManager
Oracle WorkManagerOracle WorkManager
Oracle WorkManager
 
Datasheet weblogic midvisionextensionforibmraf
Datasheet weblogic midvisionextensionforibmrafDatasheet weblogic midvisionextensionforibmraf
Datasheet weblogic midvisionextensionforibmraf
 
Web site optimization
Web site optimizationWeb site optimization
Web site optimization
 
Weblogic server administration
Weblogic server administrationWeblogic server administration
Weblogic server administration
 
Oracle Web Logic server
Oracle Web Logic serverOracle Web Logic server
Oracle Web Logic server
 
weblogic perfomence tuning
weblogic perfomence tuningweblogic perfomence tuning
weblogic perfomence tuning
 
Oracle WebLogic Server Basic Concepts
Oracle WebLogic Server Basic ConceptsOracle WebLogic Server Basic Concepts
Oracle WebLogic Server Basic Concepts
 
WLST
WLSTWLST
WLST
 
JPA and Coherence with TopLink Grid
JPA and Coherence with TopLink GridJPA and Coherence with TopLink Grid
JPA and Coherence with TopLink Grid
 
Postgres the hardway
Postgres the hardwayPostgres the hardway
Postgres the hardway
 
SQL Server Wait Types Everyone Should Know
SQL Server Wait Types Everyone Should KnowSQL Server Wait Types Everyone Should Know
SQL Server Wait Types Everyone Should Know
 
Sql server backup internals
Sql server backup internalsSql server backup internals
Sql server backup internals
 
SharePoint 2013 Performance Analysis - Robi Vončina
SharePoint 2013 Performance Analysis - Robi VončinaSharePoint 2013 Performance Analysis - Robi Vončina
SharePoint 2013 Performance Analysis - Robi Vončina
 

Similar to Webcenter application performance tuning guide

WebSphere Portal Version 6.0 Web Content Management and DB2 Tuning Guide
WebSphere Portal Version 6.0 Web Content Management and DB2 Tuning GuideWebSphere Portal Version 6.0 Web Content Management and DB2 Tuning Guide
WebSphere Portal Version 6.0 Web Content Management and DB2 Tuning Guide
Tan Nguyen Phi
 
MongoDB Sharding
MongoDB ShardingMongoDB Sharding
MongoDB Sharding
uzzal basak
 
Weblogic Cluster advanced performance tuning
Weblogic Cluster advanced performance tuningWeblogic Cluster advanced performance tuning
Weblogic Cluster advanced performance tuning
Aditya Bhuyan
 
Weblogic Cluster performance tuning
Weblogic Cluster performance tuningWeblogic Cluster performance tuning
Weblogic Cluster performance tuning
Aditya Bhuyan
 
Voldemort on Solid State Drives
Voldemort on Solid State DrivesVoldemort on Solid State Drives
Voldemort on Solid State Drives
Vinoth Chandar
 
Les 13 memory
Les 13 memoryLes 13 memory
Les 13 memory
Femi Adeyemi
 
Voldemort on Solid State Drives
Voldemort on Solid State DrivesVoldemort on Solid State Drives
Voldemort on Solid State Drives
Amy W. Tang
 
My sql
My sqlMy sql
Scaling PHP apps
Scaling PHP appsScaling PHP apps
Scaling PHP apps
Matteo Moretti
 
11g R2
11g R211g R2
11g R2
afa reg
 
Advanced Hadoop Tuning and Optimization - Hadoop Consulting
Advanced Hadoop Tuning and Optimization - Hadoop ConsultingAdvanced Hadoop Tuning and Optimization - Hadoop Consulting
Advanced Hadoop Tuning and Optimization - Hadoop Consulting
Impetus Technologies
 
Percona Cluster with Master_Slave for Disaster Recovery
Percona Cluster with Master_Slave for Disaster RecoveryPercona Cluster with Master_Slave for Disaster Recovery
Percona Cluster with Master_Slave for Disaster Recovery
Ram Gautam
 
Performance Tuning - MuraCon 2012
Performance Tuning - MuraCon 2012Performance Tuning - MuraCon 2012
Performance Tuning - MuraCon 2012
eballisty
 
How to become cloud backup provider
How to become cloud backup providerHow to become cloud backup provider
How to become cloud backup provider
CLOUDIAN KK
 
Clug 2011 March web server optimisation
Clug 2011 March  web server optimisationClug 2011 March  web server optimisation
Clug 2011 March web server optimisation
grooverdan
 
Cast Iron Cloud Integration Best Practices
Cast Iron Cloud Integration Best PracticesCast Iron Cloud Integration Best Practices
Cast Iron Cloud Integration Best Practices
Sarath Ambadas
 
oracle dba
oracle dbaoracle dba
oracle dba
uday jampani
 
Speed up your XPages Application performance
Speed up your XPages Application performanceSpeed up your XPages Application performance
Speed up your XPages Application performance
Maarga Systems
 
How to Become Cloud Backup Provider
How to Become Cloud Backup ProviderHow to Become Cloud Backup Provider
How to Become Cloud Backup Provider
Cloudian
 
IMC Summit 2016 Breakout - Per Minoborg - Work with Multiple Hot Terabytes in...
IMC Summit 2016 Breakout - Per Minoborg - Work with Multiple Hot Terabytes in...IMC Summit 2016 Breakout - Per Minoborg - Work with Multiple Hot Terabytes in...
IMC Summit 2016 Breakout - Per Minoborg - Work with Multiple Hot Terabytes in...
In-Memory Computing Summit
 

Similar to Webcenter application performance tuning guide (20)

WebSphere Portal Version 6.0 Web Content Management and DB2 Tuning Guide
WebSphere Portal Version 6.0 Web Content Management and DB2 Tuning GuideWebSphere Portal Version 6.0 Web Content Management and DB2 Tuning Guide
WebSphere Portal Version 6.0 Web Content Management and DB2 Tuning Guide
 
MongoDB Sharding
MongoDB ShardingMongoDB Sharding
MongoDB Sharding
 
Weblogic Cluster advanced performance tuning
Weblogic Cluster advanced performance tuningWeblogic Cluster advanced performance tuning
Weblogic Cluster advanced performance tuning
 
Weblogic Cluster performance tuning
Weblogic Cluster performance tuningWeblogic Cluster performance tuning
Weblogic Cluster performance tuning
 
Voldemort on Solid State Drives
Voldemort on Solid State DrivesVoldemort on Solid State Drives
Voldemort on Solid State Drives
 
Les 13 memory
Les 13 memoryLes 13 memory
Les 13 memory
 
Voldemort on Solid State Drives
Voldemort on Solid State DrivesVoldemort on Solid State Drives
Voldemort on Solid State Drives
 
My sql
My sqlMy sql
My sql
 
Scaling PHP apps
Scaling PHP appsScaling PHP apps
Scaling PHP apps
 
11g R2
11g R211g R2
11g R2
 
Advanced Hadoop Tuning and Optimization - Hadoop Consulting
Advanced Hadoop Tuning and Optimization - Hadoop ConsultingAdvanced Hadoop Tuning and Optimization - Hadoop Consulting
Advanced Hadoop Tuning and Optimization - Hadoop Consulting
 
Percona Cluster with Master_Slave for Disaster Recovery
Percona Cluster with Master_Slave for Disaster RecoveryPercona Cluster with Master_Slave for Disaster Recovery
Percona Cluster with Master_Slave for Disaster Recovery
 
Performance Tuning - MuraCon 2012
Performance Tuning - MuraCon 2012Performance Tuning - MuraCon 2012
Performance Tuning - MuraCon 2012
 
How to become cloud backup provider
How to become cloud backup providerHow to become cloud backup provider
How to become cloud backup provider
 
Clug 2011 March web server optimisation
Clug 2011 March  web server optimisationClug 2011 March  web server optimisation
Clug 2011 March web server optimisation
 
Cast Iron Cloud Integration Best Practices
Cast Iron Cloud Integration Best PracticesCast Iron Cloud Integration Best Practices
Cast Iron Cloud Integration Best Practices
 
oracle dba
oracle dbaoracle dba
oracle dba
 
Speed up your XPages Application performance
Speed up your XPages Application performanceSpeed up your XPages Application performance
Speed up your XPages Application performance
 
How to Become Cloud Backup Provider
How to Become Cloud Backup ProviderHow to Become Cloud Backup Provider
How to Become Cloud Backup Provider
 
IMC Summit 2016 Breakout - Per Minoborg - Work with Multiple Hot Terabytes in...
IMC Summit 2016 Breakout - Per Minoborg - Work with Multiple Hot Terabytes in...IMC Summit 2016 Breakout - Per Minoborg - Work with Multiple Hot Terabytes in...
IMC Summit 2016 Breakout - Per Minoborg - Work with Multiple Hot Terabytes in...
 

More from Vinay Kumar

Modernizing the monolithic architecture to container based architecture apaco...
Modernizing the monolithic architecture to container based architecture apaco...Modernizing the monolithic architecture to container based architecture apaco...
Modernizing the monolithic architecture to container based architecture apaco...
Vinay Kumar
 
Kafka and event driven architecture -apacoug20
Kafka and event driven architecture -apacoug20Kafka and event driven architecture -apacoug20
Kafka and event driven architecture -apacoug20
Vinay Kumar
 
Kafka and event driven architecture -og yatra20
Kafka and event driven architecture -og yatra20Kafka and event driven architecture -og yatra20
Kafka and event driven architecture -og yatra20
Vinay Kumar
 
Extend soa with api management Sangam18
Extend soa with api management Sangam18Extend soa with api management Sangam18
Extend soa with api management Sangam18
Vinay Kumar
 
Extend soa with api management Doag18
Extend soa with api management Doag18Extend soa with api management Doag18
Extend soa with api management Doag18
Vinay Kumar
 
Roaring with elastic search sangam2018
Roaring with elastic search sangam2018Roaring with elastic search sangam2018
Roaring with elastic search sangam2018
Vinay Kumar
 
Extend soa with api management spoug- Madrid
Extend soa with api management   spoug- MadridExtend soa with api management   spoug- Madrid
Extend soa with api management spoug- Madrid
Vinay Kumar
 
Expose your data as an api is with oracle rest data services -spoug Madrid
Expose your data as an api is with oracle rest data services -spoug MadridExpose your data as an api is with oracle rest data services -spoug Madrid
Expose your data as an api is with oracle rest data services -spoug Madrid
Vinay Kumar
 
Modern application development with oracle cloud sangam17
Modern application development with oracle cloud sangam17Modern application development with oracle cloud sangam17
Modern application development with oracle cloud sangam17
Vinay Kumar
 
award-3b07c32b-b116-3a75-8974-d814d37026ca
award-3b07c32b-b116-3a75-8974-d814d37026caaward-3b07c32b-b116-3a75-8974-d814d37026ca
award-3b07c32b-b116-3a75-8974-d814d37026ca
Vinay Kumar
 
award-3b07c32b-b116-3a75-8974-d814d37026ca
award-3b07c32b-b116-3a75-8974-d814d37026caaward-3b07c32b-b116-3a75-8974-d814d37026ca
award-3b07c32b-b116-3a75-8974-d814d37026ca
Vinay Kumar
 
Adf spotlight-webcenter task flow-customzation
Adf spotlight-webcenter task flow-customzationAdf spotlight-webcenter task flow-customzation
Adf spotlight-webcenter task flow-customzation
Vinay Kumar
 
Personalization in webcenter portal
Personalization in webcenter portalPersonalization in webcenter portal
Personalization in webcenter portal
Vinay Kumar
 
Custom audit rules in Jdeveloper extension
Custom audit rules in Jdeveloper extensionCustom audit rules in Jdeveloper extension
Custom audit rules in Jdeveloper extension
Vinay Kumar
 
File upload in oracle adf mobile
File upload in oracle adf mobileFile upload in oracle adf mobile
File upload in oracle adf mobile
Vinay Kumar
 
Oracle adf performance tips
Oracle adf performance tipsOracle adf performance tips
Oracle adf performance tips
Vinay Kumar
 
JSR 168 Portal - Overview
JSR 168 Portal - OverviewJSR 168 Portal - Overview
JSR 168 Portal - Overview
Vinay Kumar
 
Spring framework in depth
Spring framework in depthSpring framework in depth
Spring framework in depth
Vinay Kumar
 
Oracle Fusion Architecture
Oracle Fusion ArchitectureOracle Fusion Architecture
Oracle Fusion Architecture
Vinay Kumar
 
Incentive compensation in fusion CRM
Incentive compensation in fusion CRMIncentive compensation in fusion CRM
Incentive compensation in fusion CRM
Vinay Kumar
 

More from Vinay Kumar (20)

Modernizing the monolithic architecture to container based architecture apaco...
Modernizing the monolithic architecture to container based architecture apaco...Modernizing the monolithic architecture to container based architecture apaco...
Modernizing the monolithic architecture to container based architecture apaco...
 
Kafka and event driven architecture -apacoug20
Kafka and event driven architecture -apacoug20Kafka and event driven architecture -apacoug20
Kafka and event driven architecture -apacoug20
 
Kafka and event driven architecture -og yatra20
Kafka and event driven architecture -og yatra20Kafka and event driven architecture -og yatra20
Kafka and event driven architecture -og yatra20
 
Extend soa with api management Sangam18
Extend soa with api management Sangam18Extend soa with api management Sangam18
Extend soa with api management Sangam18
 
Extend soa with api management Doag18
Extend soa with api management Doag18Extend soa with api management Doag18
Extend soa with api management Doag18
 
Roaring with elastic search sangam2018
Roaring with elastic search sangam2018Roaring with elastic search sangam2018
Roaring with elastic search sangam2018
 
Extend soa with api management spoug- Madrid
Extend soa with api management   spoug- MadridExtend soa with api management   spoug- Madrid
Extend soa with api management spoug- Madrid
 
Expose your data as an api is with oracle rest data services -spoug Madrid
Expose your data as an api is with oracle rest data services -spoug MadridExpose your data as an api is with oracle rest data services -spoug Madrid
Expose your data as an api is with oracle rest data services -spoug Madrid
 
Modern application development with oracle cloud sangam17
Modern application development with oracle cloud sangam17Modern application development with oracle cloud sangam17
Modern application development with oracle cloud sangam17
 
award-3b07c32b-b116-3a75-8974-d814d37026ca
award-3b07c32b-b116-3a75-8974-d814d37026caaward-3b07c32b-b116-3a75-8974-d814d37026ca
award-3b07c32b-b116-3a75-8974-d814d37026ca
 
award-3b07c32b-b116-3a75-8974-d814d37026ca
award-3b07c32b-b116-3a75-8974-d814d37026caaward-3b07c32b-b116-3a75-8974-d814d37026ca
award-3b07c32b-b116-3a75-8974-d814d37026ca
 
Adf spotlight-webcenter task flow-customzation
Adf spotlight-webcenter task flow-customzationAdf spotlight-webcenter task flow-customzation
Adf spotlight-webcenter task flow-customzation
 
Personalization in webcenter portal
Personalization in webcenter portalPersonalization in webcenter portal
Personalization in webcenter portal
 
Custom audit rules in Jdeveloper extension
Custom audit rules in Jdeveloper extensionCustom audit rules in Jdeveloper extension
Custom audit rules in Jdeveloper extension
 
File upload in oracle adf mobile
File upload in oracle adf mobileFile upload in oracle adf mobile
File upload in oracle adf mobile
 
Oracle adf performance tips
Oracle adf performance tipsOracle adf performance tips
Oracle adf performance tips
 
JSR 168 Portal - Overview
JSR 168 Portal - OverviewJSR 168 Portal - Overview
JSR 168 Portal - Overview
 
Spring framework in depth
Spring framework in depthSpring framework in depth
Spring framework in depth
 
Oracle Fusion Architecture
Oracle Fusion ArchitectureOracle Fusion Architecture
Oracle Fusion Architecture
 
Incentive compensation in fusion CRM
Incentive compensation in fusion CRMIncentive compensation in fusion CRM
Incentive compensation in fusion CRM
 

Recently uploaded

Introduction-to-the-IAM-Platform-Implementation-Plan.pptx
Introduction-to-the-IAM-Platform-Implementation-Plan.pptxIntroduction-to-the-IAM-Platform-Implementation-Plan.pptx
Introduction-to-the-IAM-Platform-Implementation-Plan.pptx
313mohammedarshad
 
(CISOPlatform Summit & SACON 2024) Regulation & Response In Banks.pdf
(CISOPlatform Summit & SACON 2024) Regulation & Response In Banks.pdf(CISOPlatform Summit & SACON 2024) Regulation & Response In Banks.pdf
(CISOPlatform Summit & SACON 2024) Regulation & Response In Banks.pdf
Priyanka Aash
 
The Role of IoT in Australian Mobile App Development - PDF Guide
The Role of IoT in Australian Mobile App Development - PDF GuideThe Role of IoT in Australian Mobile App Development - PDF Guide
The Role of IoT in Australian Mobile App Development - PDF Guide
Shiv Technolabs
 
Tailored CRM Software Development for Enhanced Customer Insights
Tailored CRM Software Development for Enhanced Customer InsightsTailored CRM Software Development for Enhanced Customer Insights
Tailored CRM Software Development for Enhanced Customer Insights
SynapseIndia
 
Dublin_mulesoft_meetup_Mulesoft_Salesforce_Integration (1).pptx
Dublin_mulesoft_meetup_Mulesoft_Salesforce_Integration (1).pptxDublin_mulesoft_meetup_Mulesoft_Salesforce_Integration (1).pptx
Dublin_mulesoft_meetup_Mulesoft_Salesforce_Integration (1).pptx
Kunal Gupta
 
The Impact of the Internet of Things (IoT) on Smart Homes and Cities
The Impact of the Internet of Things (IoT) on Smart Homes and CitiesThe Impact of the Internet of Things (IoT) on Smart Homes and Cities
The Impact of the Internet of Things (IoT) on Smart Homes and Cities
Arpan Buwa
 
Opencast Summit 2024 — Opencast @ University of Münster
Opencast Summit 2024 — Opencast @ University of MünsterOpencast Summit 2024 — Opencast @ University of Münster
Opencast Summit 2024 — Opencast @ University of Münster
Matthias Neugebauer
 
Vertex AI Agent Builder - GDG Alicante - Julio 2024
Vertex AI Agent Builder - GDG Alicante - Julio 2024Vertex AI Agent Builder - GDG Alicante - Julio 2024
Vertex AI Agent Builder - GDG Alicante - Julio 2024
Nicolás Lopéz
 
Litestack talk at Brighton 2024 (Unleashing the power of SQLite for Ruby apps)
Litestack talk at Brighton 2024 (Unleashing the power of SQLite for Ruby apps)Litestack talk at Brighton 2024 (Unleashing the power of SQLite for Ruby apps)
Litestack talk at Brighton 2024 (Unleashing the power of SQLite for Ruby apps)
Muhammad Ali
 
Sonkoloniya documentation - ONEprojukti.pdf
Sonkoloniya documentation - ONEprojukti.pdfSonkoloniya documentation - ONEprojukti.pdf
Sonkoloniya documentation - ONEprojukti.pdf
SubhamMandal40
 
(CISOPlatform Summit & SACON 2024) Workshop _ Most Dangerous Attack Technique...
(CISOPlatform Summit & SACON 2024) Workshop _ Most Dangerous Attack Technique...(CISOPlatform Summit & SACON 2024) Workshop _ Most Dangerous Attack Technique...
(CISOPlatform Summit & SACON 2024) Workshop _ Most Dangerous Attack Technique...
Priyanka Aash
 
Mastering OnlyFans Clone App Development: Key Strategies for Success
Mastering OnlyFans Clone App Development: Key Strategies for SuccessMastering OnlyFans Clone App Development: Key Strategies for Success
Mastering OnlyFans Clone App Development: Key Strategies for Success
David Wilson
 
Semantic-Aware Code Model: Elevating the Future of Software Development
Semantic-Aware Code Model: Elevating the Future of Software DevelopmentSemantic-Aware Code Model: Elevating the Future of Software Development
Semantic-Aware Code Model: Elevating the Future of Software Development
Baishakhi Ray
 
Girls call Kolkata 👀 XXXXXXXXXXX 👀 Rs.9.5 K Cash Payment With Room Delivery
Girls call Kolkata 👀 XXXXXXXXXXX 👀 Rs.9.5 K Cash Payment With Room Delivery Girls call Kolkata 👀 XXXXXXXXXXX 👀 Rs.9.5 K Cash Payment With Room Delivery
Girls call Kolkata 👀 XXXXXXXXXXX 👀 Rs.9.5 K Cash Payment With Room Delivery
sunilverma7884
 
MAKE MONEY ONLINE Unlock Your Income Potential Today.pptx
MAKE MONEY ONLINE Unlock Your Income Potential Today.pptxMAKE MONEY ONLINE Unlock Your Income Potential Today.pptx
MAKE MONEY ONLINE Unlock Your Income Potential Today.pptx
janagijoythi
 
High Profile Girls Call ServiCe Hyderabad 0000000000 Tanisha Best High Class ...
High Profile Girls Call ServiCe Hyderabad 0000000000 Tanisha Best High Class ...High Profile Girls Call ServiCe Hyderabad 0000000000 Tanisha Best High Class ...
High Profile Girls Call ServiCe Hyderabad 0000000000 Tanisha Best High Class ...
aslasdfmkhan4750
 
Acumatica vs. Sage Intacct _Construction_July (1).pptx
Acumatica vs. Sage Intacct _Construction_July (1).pptxAcumatica vs. Sage Intacct _Construction_July (1).pptx
Acumatica vs. Sage Intacct _Construction_July (1).pptx
BrainSell Technologies
 
Google I/O Extended Harare Merged Slides
Google I/O Extended Harare Merged SlidesGoogle I/O Extended Harare Merged Slides
Google I/O Extended Harare Merged Slides
Google Developer Group - Harare
 
Uncharted Together- Navigating AI's New Frontiers in Libraries
Uncharted Together- Navigating AI's New Frontiers in LibrariesUncharted Together- Navigating AI's New Frontiers in Libraries
Uncharted Together- Navigating AI's New Frontiers in Libraries
Brian Pichman
 
Data Integration Basics: Merging & Joining Data
Data Integration Basics: Merging & Joining DataData Integration Basics: Merging & Joining Data
Data Integration Basics: Merging & Joining Data
Safe Software
 

Recently uploaded (20)

Introduction-to-the-IAM-Platform-Implementation-Plan.pptx
Introduction-to-the-IAM-Platform-Implementation-Plan.pptxIntroduction-to-the-IAM-Platform-Implementation-Plan.pptx
Introduction-to-the-IAM-Platform-Implementation-Plan.pptx
 
(CISOPlatform Summit & SACON 2024) Regulation & Response In Banks.pdf
(CISOPlatform Summit & SACON 2024) Regulation & Response In Banks.pdf(CISOPlatform Summit & SACON 2024) Regulation & Response In Banks.pdf
(CISOPlatform Summit & SACON 2024) Regulation & Response In Banks.pdf
 
The Role of IoT in Australian Mobile App Development - PDF Guide
The Role of IoT in Australian Mobile App Development - PDF GuideThe Role of IoT in Australian Mobile App Development - PDF Guide
The Role of IoT in Australian Mobile App Development - PDF Guide
 
Tailored CRM Software Development for Enhanced Customer Insights
Tailored CRM Software Development for Enhanced Customer InsightsTailored CRM Software Development for Enhanced Customer Insights
Tailored CRM Software Development for Enhanced Customer Insights
 
Dublin_mulesoft_meetup_Mulesoft_Salesforce_Integration (1).pptx
Dublin_mulesoft_meetup_Mulesoft_Salesforce_Integration (1).pptxDublin_mulesoft_meetup_Mulesoft_Salesforce_Integration (1).pptx
Dublin_mulesoft_meetup_Mulesoft_Salesforce_Integration (1).pptx
 
The Impact of the Internet of Things (IoT) on Smart Homes and Cities
The Impact of the Internet of Things (IoT) on Smart Homes and CitiesThe Impact of the Internet of Things (IoT) on Smart Homes and Cities
The Impact of the Internet of Things (IoT) on Smart Homes and Cities
 
Opencast Summit 2024 — Opencast @ University of Münster
Opencast Summit 2024 — Opencast @ University of MünsterOpencast Summit 2024 — Opencast @ University of Münster
Opencast Summit 2024 — Opencast @ University of Münster
 
Vertex AI Agent Builder - GDG Alicante - Julio 2024
Vertex AI Agent Builder - GDG Alicante - Julio 2024Vertex AI Agent Builder - GDG Alicante - Julio 2024
Vertex AI Agent Builder - GDG Alicante - Julio 2024
 
Litestack talk at Brighton 2024 (Unleashing the power of SQLite for Ruby apps)
Litestack talk at Brighton 2024 (Unleashing the power of SQLite for Ruby apps)Litestack talk at Brighton 2024 (Unleashing the power of SQLite for Ruby apps)
Litestack talk at Brighton 2024 (Unleashing the power of SQLite for Ruby apps)
 
Sonkoloniya documentation - ONEprojukti.pdf
Sonkoloniya documentation - ONEprojukti.pdfSonkoloniya documentation - ONEprojukti.pdf
Sonkoloniya documentation - ONEprojukti.pdf
 
(CISOPlatform Summit & SACON 2024) Workshop _ Most Dangerous Attack Technique...
(CISOPlatform Summit & SACON 2024) Workshop _ Most Dangerous Attack Technique...(CISOPlatform Summit & SACON 2024) Workshop _ Most Dangerous Attack Technique...
(CISOPlatform Summit & SACON 2024) Workshop _ Most Dangerous Attack Technique...
 
Mastering OnlyFans Clone App Development: Key Strategies for Success
Mastering OnlyFans Clone App Development: Key Strategies for SuccessMastering OnlyFans Clone App Development: Key Strategies for Success
Mastering OnlyFans Clone App Development: Key Strategies for Success
 
Semantic-Aware Code Model: Elevating the Future of Software Development
Semantic-Aware Code Model: Elevating the Future of Software DevelopmentSemantic-Aware Code Model: Elevating the Future of Software Development
Semantic-Aware Code Model: Elevating the Future of Software Development
 
Girls call Kolkata 👀 XXXXXXXXXXX 👀 Rs.9.5 K Cash Payment With Room Delivery
Girls call Kolkata 👀 XXXXXXXXXXX 👀 Rs.9.5 K Cash Payment With Room Delivery Girls call Kolkata 👀 XXXXXXXXXXX 👀 Rs.9.5 K Cash Payment With Room Delivery
Girls call Kolkata 👀 XXXXXXXXXXX 👀 Rs.9.5 K Cash Payment With Room Delivery
 
MAKE MONEY ONLINE Unlock Your Income Potential Today.pptx
MAKE MONEY ONLINE Unlock Your Income Potential Today.pptxMAKE MONEY ONLINE Unlock Your Income Potential Today.pptx
MAKE MONEY ONLINE Unlock Your Income Potential Today.pptx
 
High Profile Girls Call ServiCe Hyderabad 0000000000 Tanisha Best High Class ...
High Profile Girls Call ServiCe Hyderabad 0000000000 Tanisha Best High Class ...High Profile Girls Call ServiCe Hyderabad 0000000000 Tanisha Best High Class ...
High Profile Girls Call ServiCe Hyderabad 0000000000 Tanisha Best High Class ...
 
Acumatica vs. Sage Intacct _Construction_July (1).pptx
Acumatica vs. Sage Intacct _Construction_July (1).pptxAcumatica vs. Sage Intacct _Construction_July (1).pptx
Acumatica vs. Sage Intacct _Construction_July (1).pptx
 
Google I/O Extended Harare Merged Slides
Google I/O Extended Harare Merged SlidesGoogle I/O Extended Harare Merged Slides
Google I/O Extended Harare Merged Slides
 
Uncharted Together- Navigating AI's New Frontiers in Libraries
Uncharted Together- Navigating AI's New Frontiers in LibrariesUncharted Together- Navigating AI's New Frontiers in Libraries
Uncharted Together- Navigating AI's New Frontiers in Libraries
 
Data Integration Basics: Merging & Joining Data
Data Integration Basics: Merging & Joining DataData Integration Basics: Merging & Joining Data
Data Integration Basics: Merging & Joining Data
 

Webcenter application performance tuning guide

  • 1. Webcenter Application Performance Tuning guide Vinay Kumar 18-03-2014 Abstract This paper describe generic tuning guideline for webcenter portal , Webcenter content, JRockit, Database and Weblogic server
  • 2. Table of Contents Introduction............................................................................................1 Part 1: Tuning the Database ...................................................................2 Part 2: Tuning the JVM ( JRockit )............................................................4 Part 3: Tuning WebLogic Server (WLS)....................................................5 Part 4: Tuning Webcenter Servers...........................................................7 Tuning Webcenter Content (UCM).......................................................7 Tuning Webcenter Portal (Spaces) .......................................................9 Appendix...............................................................................................10 Introduction
  • 3. This document describes basic performance concepts, how to measure performance, and designing applications for performance and scalability .This will be useful for application built on Fusion Middleware i.e. Webcenter Portal, Webcenter Spaces . This tips and guide will be helpful in tuning the Webcenter applications. Use case is like, we are using webcenter portal 11.1.1.8 and Wecenter content. Following guideline will used to optimize the portal application. Application using Webcenter Portal and Webcenter content in backend. We are using Oracle Database 11g R2. Part 1: Tuning the Database
  • 4. The first of tuning the Platform is to tune the database appropriately to enhance the performance. The following 5 steps can be used for tuning the database.  MDS Cache: MDS cache grows in size as metadata objects are accessed until it hits max-size- kb. After that, objects are removed from the cache to make room as needed on a least recently used (LRU) basis to make room for new objects. Unless time-to-live (TTL) is set, the MDS cache continues to occupy the max-size-kb of memory. This can be tuned by increasing the size of Buffer cache. o SQL> DB_CACHE_SIZE=16 MB  Shared Pool Size: Need to increase for improving the performance if the application uses stored procedures and functions by setting memory_target. Also set the minimum value of shared pool to 500MB which can grow and reduce based on demand. o SQL> alter system set shared_pool_size=500MB  Maximum Opened cursor: For using JDBC statement caching. Set the value to 1500.  Shared Global Area (SGA): Set the SGA to 700 MB. o SQL> alter system set SGA_TARGET=700MB scope=spfile
  • 5. Part 2: Tuning the JVM ( JRockit ) As all the java processes are spun and maintained by the JVM, it needs to be tuned properly in order to get the desired performance. The tuning can be done in terms of heap size allocated to different JVM processes, Garbage collection and other run-time parameters.  Tuning the Garbage Collection: Set the dynamic Garbage Collection mode to Throughput Mode. Also we can reduce the memory fragmentation by selecting this GC mode.Use - XgcPrio:throughput as the command line reference for JVM.  Setting the Heap Size on 64-bit Systems: The heap allocation is a vital area which needs to be carrefully tuned to increase the performance. As in demo environments, at most 1 or 2 users will be using the systems, the memory allocation should be efficient, e.g. allocate the minimum memory required for the application during startup and allow it to grow dynamically. Also the heap size should be set such that the used heap is 50% of the maximum allocated heap. Ex: Set -Xms=512 MB (for UCM and WC_Spaces) and -Xmx=1024 (for WC_Spaces) and - Xmx=1536 (for UCM) in setDSSCustomDomainEnv.sh for USER_MEM_ARGS  Setting the Nursery Size: Set -Xns=128m to increase the nursery size. This reduces the chances of very frequent Garbage collections and long pause times. It is set to optimal value by default when the GC mode is selected as throughput.  Tuning Start Up Time: Add the argument -Djava.security.egd=file:/dev/../dev/urandom to increase the startup time by restricting the OS from random number generation and instead using a pseudo random number. Never use this option on an actual production environment  Disabling Explicit Garbage Collection: Add the argument –XxnoSystemGC to avoid the applications calling the system.gc() method which results in a performance degradation.
  • 6. Part 3: Tuning WebLogic Server (WLS) As the Applications are built and hosted on the WebLogic application server, the tuning of the WLS is an essential part of the tuning process of the demos.  Stuck thread corrective action: o Set Max Stuck Thread Time to 600 sec. o Set Stuck Thread Count to 3 o Set Failure Action to “Suspend this server for corrective action” o Set the Auto killed and Auto restart to true at <server> → configuration → health monitoring → set restart interval at 7200 and max restart times to 2.  Set On-Demand deployment of WebLogic internal components instead of start-up. There are many internal applications that are deployed during start-up. These internal applications consume memory and require CPU time during deployment. This contributes to the WebLogic. Server start-up time and base memory footprint. Since many of these internal applications are not needed by every user, WebLogic Server has been modified to wait and deploy these applications on the first access (on-demand) instead of always deploying them during server start-up. This reduces start-up time and memory footprint. On the Configuration: General page for each domain, you can specify whether to deploy internal applications such as the administration Console, UDDI, and the UDDI Explorer on demand (upon first access) instead of during server start-up.  Use minimum logging and disable the HTTP and stdout logging. Reduce the logging volume by changing the log level to warning/debug/error. Switched off domain broadcaster logs. JMS and JDBC logging has been disabled. Access logs are also disabled.  Tuning Network I/O for WebLogic: o Reduce the Connection Backlog Buffering by reducing Accept Backlog Values to 50 from 300 so as to drop the backlogs on TCP requests because in Demo, not many TCP requests will be incoming. Environment → Servers → Configuration → Tuning → Accept Backlog=50 o Enable Java I/O. If the Enable Native IO parameter is not selected, the server instance exclusively uses the Java muxer. This may be acceptable if there are a small number of clients and the rate at which requests arrive at the server is fairly high. Under these conditions, the Java muxer performs as well as a native muxer and eliminate Java Native Interface (JNI) overhead. Since in demo environment, the numbers of clients are limited, enabling Java I/O can increase performance. Uncheck “Server → Configuration → Tuning → enable native I/O”  Tuning JDBC: o Turn off the property “test connections on reserve”. o Set the initial connection pool size to 5.
  • 7. o Increased statement cached size to 20 from 10. o For the datasources (used by independent managed servers), enable “pinned to thread” services.  Use Pipelining and parallel processing in DBMS applications. DBMS are designed to work best when very busy with lots of different things to do. The worst way to use a DBMS is as dumb file storage for one big single-threaded application. If you can design your application and data to support lots of parallel processes working on easily distinguished subsets of the work, your application will be much faster.  Tuning File Stores: o Use Direct-Write synchronous write policy. It performs better than cache-flush write policy. o The Disabled write-policy option can dramatically improve performance, especially at low client loads. However, it is unsafe because writes become asynchronous and data can be lost in the event of Operating System or power failure.  Tuning JMS: o Paging Out Messages to free up memory. JMS servers automatically attempt to free up virtual memory during peak message load periods. JMS message paging saves memory for persistent messages, as even persistent messages cache their data in memory. o Specifying a Message Paging Directory: If a paging directory is not specified, then paged-out message bodies are written to the default tmp directory inside the servername subdirectory of a domain’s root directory. For example, if no directory name is specified for the default paging directory, it defaults to: bea_homeuser_projectsdomainsdomainnameserversservernametmp where domainname is the root directory of your domain, typically c:beauser_projectsdomainsdomainname, which is parallel to the directory in which WebLogic Server program files are stored, typically c:beawlserver_10.3. o Tuning the Message Buffer Size Option: The Message Buffer Size option specifies the amount of memory that will be used to store message bodies in memory before they are paged out to disk. The default value of Message Buffer Size is approximately one-third of the maximum heap size for the JVM, or a maximum of 512 megabytes. The larger this parameter is set, the more memory JMS will consume when many messages are waiting on queues or topics. Reduced it to 100MB (approx.)
  • 8. Part 4: Tuning Webcenter Servers In this chapter we will discuss on the tuning of both Webcenter Content (aka UCM) and Webcenter Portal (aka Spaces) servers. Tuning Webcenter Content (UCM) 1. Setting JRockit Virtual Machine (JVM) Arguments. JVM arguments are set in the setDomainEnv.sh file.  Heap size: If the system is overloaded, that is, garbage is collected or “out of memory error” occurs frequently, then increase the heap size as appropriate to your system's available physical memory.The parameter is: -Xms512M -Xmx1536M -Xns512M  This is an out-of-the-box setting.  Garbage collector behavior: To maximize throughput in an application, set the following JVM option for the application's garbage collector behavior: -Xgcprio:throughput (already set in Base Platform) Djrockit.codegen.newlockmatching=true This is an out-of-the-box setting.  Security: The following JVM arguments improve performance of Webcenter application's security layer. -DUSE_JAAS=false -Djps.policystore.hybrid.mode=false Djps.combiner.optimize.lazyeval=true -Djps.combiner.optimize=true -Djps.auth=ACC  Log output: This option reduces the log output in some Webcenter application dependent components. -Djbo.debugoutput=silent 2. Setting System Limit To run a WebCenter application at moderate load, set the open-files-limit to 2048. If you encounter errors, such as running out of file descriptors, then increase the system limit. For example, on Linux, you can use this command: ulimit -n 4096 (default is 1024)
  • 9. 3. Setting HTTP Session Timeout To manage over resource usage, adjust the session timeout value, in minutes, in the web.xml file manually. The following is a sample snippet of web.xml: <session-config> <session-timeout> 45 </session-timeout> </session-config>
  • 10. Tuning Webcenter Portal (Spaces) In addition to above tunings, follow the below steps for tuning Webcenter Spaces. 1. Tuning Portlet Service - For the Portlets service, 28 supported locales are defined out-of-the-box. Remove the locales that are unnecessary for the application. If these properties are modified, then post deployment, the adfconfig.xml must be edited manually. 2. Configure Portlet cache size Change the following parameter in adf-config.xml manually <adf-portlet-config> <supportedLocales> <cacheSettings enabled="true"> <maxSize>10000000</maxSize> {default value} </cacheSettings> <adf-portlet-config> 3. Configure portlet timeout Modify the portlet timeout value in the adf-portlet-config element of the adf-config.xml file. Default: 10 seconds, minimum: 0.1 seconds, maximum: 60 seconds. If you must modify these properties, post deployment, you must edit adf- config.xml manually.The following is a sample snippet of adf-config.xml: <adf-portlet-config> .... <defaultTimeout>5</defaultTimeout> <minimumTimeout>2</minimumTimeout> <maximumTimeout>100</maximumTimeout> </adf-portlet-config>
  • 11. Appendix Related Reading and References  Oracle Documentation http://www.oracle.com/technology/documentation/index.html  Oracle Fusion Middleware Administrator's Guide http://www.oracle.com/technology/documentation/middleware.html  Oracle Fusion Middleware Administrator's Guide for Oracle Webcenter  http://www.oracle.com/technology/documentation/database.html  Oracle Database Performance Tuning Guide  Oracle Database Administrator's Guide http://www.oracle.com/technetwork/middleware/weblogic/documentation/index.html  Oracle Fusion Middleware Performance and Tuning for Oracle WebLogic Server http://download.oracle.com/docs/cd/E21764_01/core.1111/e10108/toc.htm  Oracle JRockit Java Virtual Machine (JVM)  "Welcome to Oracle JRockit" at http://download.oracle.com/docs/cd/E13150_01/jrockit_jvm/jrockit/webdocs/index.html  "First Steps for Tuning the Oracle JRockit JVM " at http://download.oracle.com/docs/cd/E13150_01/jrockit_jvm/jrockit/geninfo/diagnos/bestpractices.html  "Tuning the Memory Management System" at http://download.oracle.com/docs/cd/E13150_01/jrockit_jvm/jrockit/geninfo/diagnos/memman.html#wp1087125  "About Profiling and Performance Tuning" at http://download.oracle.com/docs/cd/E13150_01/jrockit_jvm/jrockit/geninfo/diagnos/about_prof_perftune.html