How To Improve Weblogic Servers Startup Time
About
Blog
Privacy Policy
SiteMap
This is probably a question that every Weblogic admin/developer has thought about at least once. Especially if you are running some custom WLST scripts to startup your Weblogic infrastructure, there are a few things you could try to reduce the startup time of your Weblogic servers.
Of course, before engaging in this effort of speeding up the startup process one must make sure that all errors are removed from the startup sequence and that the Weblogic services and applications are properly initialized. Once this is confirmed, a few things to try:
1. If you are running Weblogic on a Linux machine, then beware of Java bug 6521844. Because WebLogic needs access to sources of random data, both for normal operation (e.g., session IDs) and for domain creation (e.g., key generation), this bug might result in performance degradation. To attempt to work around this issue, you must:
a. Edit the file <jre>/lib/security/java.security to set:
securerandom.source=file:/dev/./urandom
Yes, just add that dot. Because even though “securerandom.source” property is set to “file:/dev/urandom” in the java.security file, this string is actually an alias for “file:/dev/random” in [Java’s] Unix/Linux native SeedGeneration code. As “/dev/random” is being referred indirectly for generation of random numbers, it may block the services startup process if random numbers are exhausted in Entropy Pool.
You should be aware that this approach lessens the security, so be careful on Production systems. Also check the Oracle docs for more information: http://docs.oracle.com/cd/E12839_01/doc.1111/e14772/weblogic_server_issues.htm#CIHIIBGJ
b. Specify the following system property when starting a Java process:
-Djava.security.egd=file:/dev/./urandom
2. Especially if you are using WLST scripts to start and stop your server, like the ones presented in this previous post, you can reduce the time it takes WLST to load by providing “- skipWLSModuleScanning” in the command like. For example:
java weblogic.WLST -skipWLSModuleScanning <script>.py
This will speed up startup time of WLST by skipping package scanning and caching for WLS modules.
3. If connecting to the Node Manager to start the Weblogic servers, consider a non-SSL connection, especially if on the same machine. This depends on your environment though, and for production systems your organization might enforce SSL connections.
4. For stopping the servers, there is no need to connect to the Admin Server to issue a shutdown command. Consider connecting to the Node Manager and stopping the servers using nmKill (‘<ServerName>’) because connecting to the Admin Server is time consuming.
Also, please consider that these suggestions apply in general and they will not fix every slow startup, that might actually be caused by a real problem such as application size/design or slow IO on the server machine.
Share
Tweet
← How to Run OAM 11g Audit Reports in BI Publisher 11g
Report File System Usage Across All Hosts with EM Cloud Control 12c →
helloweblogic May 21, 2014 at 9:01 am as we know,the Java bug 6521844 has been fixed at jdk1.6 Reply ↓
as we know,the Java bug 6521844 has been fixed at jdk1.6
Pingback: Weblogic - Khai's personal knowledge vault.
Pingback: Speed Up Weblogic Managed Server Start Up – Develop In Pair
Your email address will not be published.
Comment
Name
Website
Notify me of follow-up comments by email.
Notify me of new posts by email.
Dealing with Stuck Threads in WebLogic
Unable to start WLST: "Could Not Find or Load Main Class weblogic.WLST"
WebLogic 12c Enterprise Deployment Architecture in the Amazon Cloud
How To Improve Weblogic Servers Startup Time
Cannot connect to Node Manager. : Access to domain for user 'weblogic' denied
Weblogic on the Managed Kubernetes Service from Oracle Cloud Infrastructure
WebLogic AdminServer startup and shutdown scripts
Passing arguments to WLST scripts
Setting up SOA 11g XA Transaction Timeouts - General Rules and Recommendations
How to Run OAM 11g Audit Reports in BI Publisher 11g