SlideShare a Scribd company logo
Xavier Cosultants
Weblogic
Performance
Tuning
1.What Parameters to tune
1.1 OS level parameters to tune
Typically most error conditions are TCP tuning parameter related and are
caused by the operating system’s failure to release old sockets from a
close_wait call. Common errors are “connection refused”, “too many open
files” on the server-side, and “address in use: connect” on the client-side. In
most cases, these errors can be prevented by adjusting the TCP wait_time
value and the TCP queue size.
Xavier Cosultants
/dev/tcp tcp_time_wait_interval
/dev/tcp tcp_conn_req_max_q
1.2 JVM level parameters to tune
-Xms & -Xmx parameters to the same value
Specify –XX:Permsize & -XX:MaxPermSize parameters
JVM Architecture
-XX:NewSize
-XX:MaxNewSize
-XX:SurvivorRatio
Total JVM Heap (Xms Xmx) = Young + Tenured(also called Old)
Young = Eden + From (SS1) + To (SS2)
Many people configure the JVM Object Heap size with the total JVM size. The
Heap size does not include permgen space.
So,
JVM size = Object Heap size ( Xmx) + PermGen size ( -XX:PermGen –
XX:MaxPermGen
1.2.1 How to Enable GC log for JVM
SUN JDK
JAVA_OPTIONS="${JAVA_OPTIONS} -XX:+HeapDumpOnOutOfMemoryError
-verbose:gc -XX:+PrintGCTimeStamps -XX:+PrintGCDetails -Xloggc:${LOGDIR}/gc.log"
JROCKIT
JAVA_OPTIONS="$JAVA_OPTIONS -DDebugSecurityAtn=true -DDebugSSL=true
-Xverbose:memory -Xverboselog:${LOGDIR}/gc.lo
EDEN ( Young Gen) S2 PermGem
-XX:PermGen
-XX:MaxPermGen
S1
Tenured ( Old Gen)
Xavier Cosultants
Keep the server in “Production Mode” ( in production mode the parameters of the
weblogic servers are configured for highest performance)
1.3 Server level parameters to tune
1.3.1 Workmanagers
Each workmanager will have three parameters
a) Request Class
a. ResponseTime Request Class
b. FairShare Request Class
c. Context Request Class
b) Min. Thread Constraint
c) Max Thread Constraint
d) Capacity Constraint
Advantages of WM:
Allows each application to have its own workmanager. We can efficiently
allocate the worked threads as per the requirements of the application.
For eg. A heavy application will be assigned a work manger with high no. of
threads and a light application can be assigned a light workmanager.
1.3.2 Execute queues
Execute Queues were available in the old version of weblogic. ( 8.1)
From 9.2 onwards WorkManagers were introduced.
Execute Queues have a pool of threads associated with him, and all the incoming
requests to one weblogic JVM will land to default execute queue.
1.3.2 Difference between Work Managers & Execute Queues
Work managers provide you the ability to better control thread utilization (server performance)
than execute-queues, primarily due to the many ways that you can specify scheduling guidelines
for the priority-based thread pool. These scheduling guidelines can be set either as numeric values
or as the capacity of a server-managed resource, like a JDBC connection pool.
Number of Available Socket Readers
Xavier Cosultants
1.3.3 Struck Threads
A stuck thread is a thread that cannot complete its current work or accept new work because of an
unfinished work or a deadlock.
WebLogic Server automatically detects when a thread in an execute queue becomes “stuck.”
StruckThreadMaxTime
1.3.4 Tuning Muxer
SocketReaders are nothing but Muxer Threads.
SOCKET READERS – threads  these threads use software packages. These ‘software
packages” are called Muxers.
So, a socket reader using a software package called “muxer” is called a muxer thread.
Muxers are “software
The socket Muxer manages the server’s existing socket connections. It first determines
which sockets have incoming requests waiting to be processed. It then reads enough data
to determine the protocol and dispatches the socket to an appropriate runtime layer based
on the protocol. In the runtime layer, the socket muxer threads determine which execute
thread queue to be used and delegates the request accordingly.
Backlog buffering
The Accept Backlog parameter specifies how many
Transmission Control Protocol (TCP) connections can be buffered in a wait queue
JDBC level parameters to tune
Pool size - keep the optimal value for “initial capacity” , max capacity &
capacity increment.
TestConnectionsOnReserve – checks the connections before giving to
application. It minimizes the possibility of delivering an invalid connection to the
application.
JMS level parameters to tune
Xavier Cosultants
Persistant store
Message size & Queue Size
Bridge
How to force garbage collection & threaddump from console
Servers  <server-name>  monitoring  performance.
A thread dump can also be taken using kill -3 <PID>
Theread dump will be stored in console log.
What are the Types of Garbage Collection
(For sun HOT SPOT JVM)
Xavier Cosultants
Garbage collections are divided into 4 major types based on how the collection is done
in Young Generation & Old Generation.
For Each generation either SERIAL Or PARALLEL algorithms are used.
Both these Serial & Parallel algorithms are STOP-THE-WORLD algorithms. Which
means the application will come to stand still ( or stops ) when the GC is happening.
So what is the difference ?
SERIAL – stop-the-world & Uses single Thread
PARALLE – stop-the-world BUT uses Multiple Threads.
Even though PARALLEL GC stops the application, but because it is using multiple
threads ( enabled in multi cpu hardware) the GC time is less than a serial collector.
For this reason, PARALLEL GC is also called, through-put GC.
Apart from stop-the-world gc there is another GC , that doesn’t stop the application
completely but does it in small pauses. Its called Concurrent Mark Sweep GC.
TYPE OF GC Young
Generation
Old
Generatio
n
Remarks
SerialGC (-XX:+UseSerialGC) Serial Serial
Types of GC flow chart
STOP-THE-WORLD GC
SERIAL GC
-XX:+UseSerialGC
PARALLEL GC
-XX:+UseParallelGC
Concurrent Mark
Sweep GC (CMS)
:
+UseConcurrentMarkSweep
GC
PARALLEL COMPACTING
GC
-XX:+UseParallelOldGC
Xavier Cosultants
ParallGC (-XX:+UseParallelGC) Parallel Serial
Parallel Compacting
(-XX:+UseParallelOldGC)
Parallel Parallel
Concurrent Mark Sweep GC
(-XX:+UseConcMarkSweepGC)
Parallel CMS So from above table,
+UseParallelOldGC
& CMS can not be
used together.
+XX:-UseParallelNewGC can be used with –XX:+UseConcMarkSweepGC
Sample Output of GC:
What to Look for in GC logs..
• Occurrences of garbage collections that were initiated by CICS when the
heap utilization threshold was reached.
• Occurrences of garbage collections that were caused by an allocation failure.
• The amount of free space in the storage heap, in bytes and as a percentage.
For Version 1.4.2, the output shows only the amount of free space after a
garbage collection, but with Version 5, the amount of free space before a
garbage collection is also shown.
• The time taken for each garbage collection, in milliseconds.
• Occurrences of heap expansion.
• The amount by which a storage heap was expanded and the new size of the
heap, in bytes.

More Related Content

What's hot

Weblogic security
Weblogic securityWeblogic security
Weblogic security
Aditya Bhuyan
 
Oracle Web Logic server
Oracle Web Logic serverOracle Web Logic server
Oracle Web Logic server
Rakesh Gujjarlapudi
 
Weblogic performance tuning2
Weblogic performance tuning2Weblogic performance tuning2
Weblogic performance tuning2
Aditya Bhuyan
 
Weblogic server cluster
Weblogic server clusterWeblogic server cluster
Weblogic server cluster
Anandraj Kulkarni
 
Datasheet weblogic midvisionextensionforibmraf
Datasheet weblogic midvisionextensionforibmrafDatasheet weblogic midvisionextensionforibmraf
Datasheet weblogic midvisionextensionforibmrafMidVision
 
WebLogic 12c & WebLogic Mgmt Pack
WebLogic 12c & WebLogic Mgmt PackWebLogic 12c & WebLogic Mgmt Pack
WebLogic 12c & WebLogic Mgmt Pack
DLT Solutions
 
Learn Oracle WebLogic Server 12c Administration
Learn Oracle WebLogic Server 12c AdministrationLearn Oracle WebLogic Server 12c Administration
Learn Oracle WebLogic Server 12c Administration
Revelation Technologies
 
Oracle Weblogic Server 11g: System Administration I
Oracle Weblogic Server 11g: System Administration IOracle Weblogic Server 11g: System Administration I
Oracle Weblogic Server 11g: System Administration I
Sachin Kumar
 
Weblogic server administration
Weblogic server administrationWeblogic server administration
Weblogic server administration
bispsolutions
 
Weblogic 11g admin basic with screencast
Weblogic 11g admin basic with screencastWeblogic 11g admin basic with screencast
Weblogic 11g admin basic with screencast
Rajiv Gupta
 
Introduction to weblogic
Introduction to weblogicIntroduction to weblogic
Introduction to weblogic
Vishal Srivastava
 
Performance Tuning Oracle Weblogic Server 12c
Performance Tuning Oracle Weblogic Server 12cPerformance Tuning Oracle Weblogic Server 12c
Performance Tuning Oracle Weblogic Server 12c
Ajith Narayanan
 
weblogic training | oracle weblogic online training | weblogic server course
weblogic training | oracle weblogic online training | weblogic server courseweblogic training | oracle weblogic online training | weblogic server course
weblogic training | oracle weblogic online training | weblogic server course
Nancy Thomas
 
Oracle WebLogic: Feature Timeline from WLS9 to WLS 12c
Oracle WebLogic: Feature Timeline from WLS9 to WLS 12cOracle WebLogic: Feature Timeline from WLS9 to WLS 12c
Oracle WebLogic: Feature Timeline from WLS9 to WLS 12c
frankmunz
 
Oracle WebLogic Diagnostics & Perfomance tuning
Oracle WebLogic Diagnostics & Perfomance tuningOracle WebLogic Diagnostics & Perfomance tuning
Oracle WebLogic Diagnostics & Perfomance tuning
Michel Schildmeijer
 
Weblogic configuration & administration
Weblogic   configuration & administrationWeblogic   configuration & administration
Weblogic configuration & administrationMuhammad Mansoor
 
WebLogic Administration course outline
WebLogic Administration course outlineWebLogic Administration course outline
WebLogic Administration course outlineVybhava Technologies
 
Weblogic cluster
Weblogic clusterWeblogic cluster
Weblogic cluster
Aditya Bhuyan
 

What's hot (20)

Weblogic security
Weblogic securityWeblogic security
Weblogic security
 
Oracle Web Logic server
Oracle Web Logic serverOracle Web Logic server
Oracle Web Logic server
 
Weblogic performance tuning2
Weblogic performance tuning2Weblogic performance tuning2
Weblogic performance tuning2
 
Weblogic server cluster
Weblogic server clusterWeblogic server cluster
Weblogic server cluster
 
Datasheet weblogic midvisionextensionforibmraf
Datasheet weblogic midvisionextensionforibmrafDatasheet weblogic midvisionextensionforibmraf
Datasheet weblogic midvisionextensionforibmraf
 
WebLogic 12c & WebLogic Mgmt Pack
WebLogic 12c & WebLogic Mgmt PackWebLogic 12c & WebLogic Mgmt Pack
WebLogic 12c & WebLogic Mgmt Pack
 
Learn Oracle WebLogic Server 12c Administration
Learn Oracle WebLogic Server 12c AdministrationLearn Oracle WebLogic Server 12c Administration
Learn Oracle WebLogic Server 12c Administration
 
Oracle Weblogic Server 11g: System Administration I
Oracle Weblogic Server 11g: System Administration IOracle Weblogic Server 11g: System Administration I
Oracle Weblogic Server 11g: System Administration I
 
Weblogic server administration
Weblogic server administrationWeblogic server administration
Weblogic server administration
 
Weblogic 11g admin basic with screencast
Weblogic 11g admin basic with screencastWeblogic 11g admin basic with screencast
Weblogic 11g admin basic with screencast
 
Introduction to weblogic
Introduction to weblogicIntroduction to weblogic
Introduction to weblogic
 
Performance Tuning Oracle Weblogic Server 12c
Performance Tuning Oracle Weblogic Server 12cPerformance Tuning Oracle Weblogic Server 12c
Performance Tuning Oracle Weblogic Server 12c
 
WebLogic FAQs
WebLogic FAQsWebLogic FAQs
WebLogic FAQs
 
weblogic training | oracle weblogic online training | weblogic server course
weblogic training | oracle weblogic online training | weblogic server courseweblogic training | oracle weblogic online training | weblogic server course
weblogic training | oracle weblogic online training | weblogic server course
 
Oracle WebLogic: Feature Timeline from WLS9 to WLS 12c
Oracle WebLogic: Feature Timeline from WLS9 to WLS 12cOracle WebLogic: Feature Timeline from WLS9 to WLS 12c
Oracle WebLogic: Feature Timeline from WLS9 to WLS 12c
 
Oracle WebLogic Diagnostics & Perfomance tuning
Oracle WebLogic Diagnostics & Perfomance tuningOracle WebLogic Diagnostics & Perfomance tuning
Oracle WebLogic Diagnostics & Perfomance tuning
 
Weblogic configuration & administration
Weblogic   configuration & administrationWeblogic   configuration & administration
Weblogic configuration & administration
 
WebLogic Administration course outline
WebLogic Administration course outlineWebLogic Administration course outline
WebLogic Administration course outline
 
Oracle WebLogic 11g Topology
Oracle WebLogic 11g TopologyOracle WebLogic 11g Topology
Oracle WebLogic 11g Topology
 
Weblogic cluster
Weblogic clusterWeblogic cluster
Weblogic cluster
 

Viewers also liked

Weblogic Cluster advanced performance tuning
Weblogic Cluster advanced performance tuningWeblogic Cluster advanced performance tuning
Weblogic Cluster advanced performance tuning
Aditya Bhuyan
 
Oracle Weblogic 11g admin guide 2
Oracle Weblogic 11g admin guide 2Oracle Weblogic 11g admin guide 2
Oracle Weblogic 11g admin guide 2
Ram Kumar
 
77739818 troubleshooting-web-logic-103
77739818 troubleshooting-web-logic-10377739818 troubleshooting-web-logic-103
77739818 troubleshooting-web-logic-103shashank_ibm
 
Weblogic Cluster monitoring
Weblogic Cluster monitoringWeblogic Cluster monitoring
Weblogic Cluster monitoring
Aditya Bhuyan
 
Weblogic Cluster Installation
Weblogic Cluster InstallationWeblogic Cluster Installation
Weblogic Cluster Installation
Aditya Bhuyan
 
Oracle Coherence & WebLogic 12c Web Sockets: Delivering Real Time Push at Scale
Oracle Coherence & WebLogic 12c Web Sockets: Delivering Real Time Push at ScaleOracle Coherence & WebLogic 12c Web Sockets: Delivering Real Time Push at Scale
Oracle Coherence & WebLogic 12c Web Sockets: Delivering Real Time Push at Scale
C2B2 Consulting
 
[Rakuten TechConf2014] [Fukuoka] Case Study of Financial Web Systems Developm...
[Rakuten TechConf2014] [Fukuoka] Case Study of Financial Web Systems Developm...[Rakuten TechConf2014] [Fukuoka] Case Study of Financial Web Systems Developm...
[Rakuten TechConf2014] [Fukuoka] Case Study of Financial Web Systems Developm...
Rakuten Group, Inc.
 
Extreme Availability using Oracle 12c Features: Your very last system shutdown?
Extreme Availability using Oracle 12c Features: Your very last system shutdown?Extreme Availability using Oracle 12c Features: Your very last system shutdown?
Extreme Availability using Oracle 12c Features: Your very last system shutdown?
Toronto-Oracle-Users-Group
 
Oracle 12c New Features for Developers
Oracle 12c New Features for DevelopersOracle 12c New Features for Developers
Oracle 12c New Features for Developers
CompleteITProfessional
 
De Mensajería hacia Logs con Apache Kafka
De Mensajería hacia Logs con Apache KafkaDe Mensajería hacia Logs con Apache Kafka
De Mensajería hacia Logs con Apache Kafka
Jorge Esteban Quilcate Otoya
 
Troubleshooting Apache CloudStack at #ccceu14 by @jorizvl
Troubleshooting Apache CloudStack at #ccceu14 by @jorizvlTroubleshooting Apache CloudStack at #ccceu14 by @jorizvl
Troubleshooting Apache CloudStack at #ccceu14 by @jorizvl
Joris van Lieshout
 
Troubleshooting guide for apache 2.2 service.
Troubleshooting guide for apache 2.2 service.Troubleshooting guide for apache 2.2 service.
Troubleshooting guide for apache 2.2 service.
Wielbert Chouphen Collinson
 
Syed Vali Resume
Syed Vali ResumeSyed Vali Resume
Syed Vali ResumeSyed Vali
 
WebLogic on ODA - Oracle Open World 2013
WebLogic on ODA - Oracle Open World 2013WebLogic on ODA - Oracle Open World 2013
WebLogic on ODA - Oracle Open World 2013
Michel Schildmeijer
 

Viewers also liked (16)

Weblogic Cluster advanced performance tuning
Weblogic Cluster advanced performance tuningWeblogic Cluster advanced performance tuning
Weblogic Cluster advanced performance tuning
 
Oracle Weblogic 11g admin guide 2
Oracle Weblogic 11g admin guide 2Oracle Weblogic 11g admin guide 2
Oracle Weblogic 11g admin guide 2
 
77739818 troubleshooting-web-logic-103
77739818 troubleshooting-web-logic-10377739818 troubleshooting-web-logic-103
77739818 troubleshooting-web-logic-103
 
Weblogic Cluster monitoring
Weblogic Cluster monitoringWeblogic Cluster monitoring
Weblogic Cluster monitoring
 
Weblogic Cluster Installation
Weblogic Cluster InstallationWeblogic Cluster Installation
Weblogic Cluster Installation
 
Oracle Coherence & WebLogic 12c Web Sockets: Delivering Real Time Push at Scale
Oracle Coherence & WebLogic 12c Web Sockets: Delivering Real Time Push at ScaleOracle Coherence & WebLogic 12c Web Sockets: Delivering Real Time Push at Scale
Oracle Coherence & WebLogic 12c Web Sockets: Delivering Real Time Push at Scale
 
[Rakuten TechConf2014] [Fukuoka] Case Study of Financial Web Systems Developm...
[Rakuten TechConf2014] [Fukuoka] Case Study of Financial Web Systems Developm...[Rakuten TechConf2014] [Fukuoka] Case Study of Financial Web Systems Developm...
[Rakuten TechConf2014] [Fukuoka] Case Study of Financial Web Systems Developm...
 
Extreme Availability using Oracle 12c Features: Your very last system shutdown?
Extreme Availability using Oracle 12c Features: Your very last system shutdown?Extreme Availability using Oracle 12c Features: Your very last system shutdown?
Extreme Availability using Oracle 12c Features: Your very last system shutdown?
 
Oracle 12c New Features for Developers
Oracle 12c New Features for DevelopersOracle 12c New Features for Developers
Oracle 12c New Features for Developers
 
De Mensajería hacia Logs con Apache Kafka
De Mensajería hacia Logs con Apache KafkaDe Mensajería hacia Logs con Apache Kafka
De Mensajería hacia Logs con Apache Kafka
 
Troubleshooting Apache CloudStack at #ccceu14 by @jorizvl
Troubleshooting Apache CloudStack at #ccceu14 by @jorizvlTroubleshooting Apache CloudStack at #ccceu14 by @jorizvl
Troubleshooting Apache CloudStack at #ccceu14 by @jorizvl
 
E10132
E10132E10132
E10132
 
Troubleshooting guide for apache 2.2 service.
Troubleshooting guide for apache 2.2 service.Troubleshooting guide for apache 2.2 service.
Troubleshooting guide for apache 2.2 service.
 
Syed Vali Resume
Syed Vali ResumeSyed Vali Resume
Syed Vali Resume
 
resume
resumeresume
resume
 
WebLogic on ODA - Oracle Open World 2013
WebLogic on ODA - Oracle Open World 2013WebLogic on ODA - Oracle Open World 2013
WebLogic on ODA - Oracle Open World 2013
 

Similar to weblogic perfomence tuning

Tomcat 6: Evolving our server
Tomcat 6: Evolving our serverTomcat 6: Evolving our server
Tomcat 6: Evolving our server
Jorge S Cruz Lambert
 
Introduction to Real Time Java
Introduction to Real Time JavaIntroduction to Real Time Java
Introduction to Real Time Java
Deniz Oguz
 
Tomcat Clustering
Tomcat ClusteringTomcat Clustering
Tomcat Clusteringgouthamrv
 
Container orchestration from theory to practice
Container orchestration from theory to practiceContainer orchestration from theory to practice
Container orchestration from theory to practice
Docker, Inc.
 
Performance tuning jvm
Performance tuning jvmPerformance tuning jvm
Performance tuning jvm
Prem Kuppumani
 
CPN302 your-linux-ami-optimization-and-performance
CPN302 your-linux-ami-optimization-and-performanceCPN302 your-linux-ami-optimization-and-performance
CPN302 your-linux-ami-optimization-and-performance
Coburn Watson
 
Postgres clusters
Postgres clustersPostgres clusters
Postgres clusters
Stas Kelvich
 
Jvm Performance Tunning
Jvm Performance TunningJvm Performance Tunning
Jvm Performance Tunning
guest1f2740
 
Jvm Performance Tunning
Jvm Performance TunningJvm Performance Tunning
Jvm Performance Tunning
Terry Cho
 
Learning spark ch10 - Spark Streaming
Learning spark ch10 - Spark StreamingLearning spark ch10 - Spark Streaming
Learning spark ch10 - Spark Streaming
phanleson
 
Вячеслав Блинов «Java Garbage Collection: A Performance Impact»
Вячеслав Блинов «Java Garbage Collection: A Performance Impact»Вячеслав Блинов «Java Garbage Collection: A Performance Impact»
Вячеслав Блинов «Java Garbage Collection: A Performance Impact»
Anna Shymchenko
 
Oow2007 performance
Oow2007 performanceOow2007 performance
Oow2007 performanceRicky Zhu
 
DevoxxUK: Optimizating Application Performance on Kubernetes
DevoxxUK: Optimizating Application Performance on KubernetesDevoxxUK: Optimizating Application Performance on Kubernetes
DevoxxUK: Optimizating Application Performance on Kubernetes
Dinakar Guniguntala
 
Optimizing your java applications for multi core hardware
Optimizing your java applications for multi core hardwareOptimizing your java applications for multi core hardware
Optimizing your java applications for multi core hardware
IndicThreads
 
002 hbase clientapi
002 hbase clientapi002 hbase clientapi
002 hbase clientapi
Scott Miao
 
Java 어플리케이션 성능튜닝 Part1
Java 어플리케이션 성능튜닝 Part1Java 어플리케이션 성능튜닝 Part1
Java 어플리케이션 성능튜닝 Part1
상욱 송
 
Porting a Streaming Pipeline from Scala to Rust
Porting a Streaming Pipeline from Scala to RustPorting a Streaming Pipeline from Scala to Rust
Porting a Streaming Pipeline from Scala to Rust
Evan Chan
 
Tuning and development with SIP Servlets on Mobicents
Tuning and development with SIP Servlets on MobicentsTuning and development with SIP Servlets on Mobicents
Tuning and development with SIP Servlets on Mobicents
Jean Deruelle
 
Kafka monitoring and metrics
Kafka monitoring and metricsKafka monitoring and metrics
Kafka monitoring and metrics
Touraj Ebrahimi
 
User-space Network Processing
User-space Network ProcessingUser-space Network Processing
User-space Network Processing
Ryousei Takano
 

Similar to weblogic perfomence tuning (20)

Tomcat 6: Evolving our server
Tomcat 6: Evolving our serverTomcat 6: Evolving our server
Tomcat 6: Evolving our server
 
Introduction to Real Time Java
Introduction to Real Time JavaIntroduction to Real Time Java
Introduction to Real Time Java
 
Tomcat Clustering
Tomcat ClusteringTomcat Clustering
Tomcat Clustering
 
Container orchestration from theory to practice
Container orchestration from theory to practiceContainer orchestration from theory to practice
Container orchestration from theory to practice
 
Performance tuning jvm
Performance tuning jvmPerformance tuning jvm
Performance tuning jvm
 
CPN302 your-linux-ami-optimization-and-performance
CPN302 your-linux-ami-optimization-and-performanceCPN302 your-linux-ami-optimization-and-performance
CPN302 your-linux-ami-optimization-and-performance
 
Postgres clusters
Postgres clustersPostgres clusters
Postgres clusters
 
Jvm Performance Tunning
Jvm Performance TunningJvm Performance Tunning
Jvm Performance Tunning
 
Jvm Performance Tunning
Jvm Performance TunningJvm Performance Tunning
Jvm Performance Tunning
 
Learning spark ch10 - Spark Streaming
Learning spark ch10 - Spark StreamingLearning spark ch10 - Spark Streaming
Learning spark ch10 - Spark Streaming
 
Вячеслав Блинов «Java Garbage Collection: A Performance Impact»
Вячеслав Блинов «Java Garbage Collection: A Performance Impact»Вячеслав Блинов «Java Garbage Collection: A Performance Impact»
Вячеслав Блинов «Java Garbage Collection: A Performance Impact»
 
Oow2007 performance
Oow2007 performanceOow2007 performance
Oow2007 performance
 
DevoxxUK: Optimizating Application Performance on Kubernetes
DevoxxUK: Optimizating Application Performance on KubernetesDevoxxUK: Optimizating Application Performance on Kubernetes
DevoxxUK: Optimizating Application Performance on Kubernetes
 
Optimizing your java applications for multi core hardware
Optimizing your java applications for multi core hardwareOptimizing your java applications for multi core hardware
Optimizing your java applications for multi core hardware
 
002 hbase clientapi
002 hbase clientapi002 hbase clientapi
002 hbase clientapi
 
Java 어플리케이션 성능튜닝 Part1
Java 어플리케이션 성능튜닝 Part1Java 어플리케이션 성능튜닝 Part1
Java 어플리케이션 성능튜닝 Part1
 
Porting a Streaming Pipeline from Scala to Rust
Porting a Streaming Pipeline from Scala to RustPorting a Streaming Pipeline from Scala to Rust
Porting a Streaming Pipeline from Scala to Rust
 
Tuning and development with SIP Servlets on Mobicents
Tuning and development with SIP Servlets on MobicentsTuning and development with SIP Servlets on Mobicents
Tuning and development with SIP Servlets on Mobicents
 
Kafka monitoring and metrics
Kafka monitoring and metricsKafka monitoring and metrics
Kafka monitoring and metrics
 
User-space Network Processing
User-space Network ProcessingUser-space Network Processing
User-space Network Processing
 

More from prathap kumar

Xml material
Xml materialXml material
Xml material
prathap kumar
 
Xml material
Xml materialXml material
Xml material
prathap kumar
 
Xsd Basics R&D with ORACLE SOA
Xsd Basics R&D with ORACLE SOAXsd Basics R&D with ORACLE SOA
Xsd Basics R&D with ORACLE SOA
prathap kumar
 
E13882== ORACLE SOA COOK BOOK
E13882== ORACLE SOA COOK BOOKE13882== ORACLE SOA COOK BOOK
E13882== ORACLE SOA COOK BOOK
prathap kumar
 
Web services tutorial
Web services tutorialWeb services tutorial
Web services tutorial
prathap kumar
 
While R&D WITH ORACLE SOA
While R&D WITH ORACLE SOAWhile R&D WITH ORACLE SOA
While R&D WITH ORACLE SOA
prathap kumar
 
Synch calling asynchadd
Synch calling asynchaddSynch calling asynchadd
Synch calling asynchadd
prathap kumar
 
Stored procedure
Stored procedureStored procedure
Stored procedure
prathap kumar
 
Mediator-ORACLE SOA
Mediator-ORACLE SOAMediator-ORACLE SOA
Mediator-ORACLE SOA
prathap kumar
 
Manual device+settings ORACLE SOA
Manual device+settings ORACLE SOAManual device+settings ORACLE SOA
Manual device+settings ORACLE SOA
prathap kumar
 
Jndicreation of database adapter
Jndicreation of database adapterJndicreation of database adapter
Jndicreation of database adapter
prathap kumar
 
Humantask MAKE EASY DUDE
Humantask  MAKE EASY DUDEHumantask  MAKE EASY DUDE
Humantask MAKE EASY DUDE
prathap kumar
 
File2db
File2dbFile2db
File2db
prathap kumar
 
Exceptionhandling4remote fault
Exceptionhandling4remote faultExceptionhandling4remote fault
Exceptionhandling4remote fault
prathap kumar
 
Dvm
DvmDvm
whileloop
whileloopwhileloop
whileloop
prathap kumar
 
Compensation
CompensationCompensation
Compensation
prathap kumar
 

More from prathap kumar (20)

Oracle sql material
Oracle sql materialOracle sql material
Oracle sql material
 
Xml material
Xml materialXml material
Xml material
 
Xslt
XsltXslt
Xslt
 
Xsd
XsdXsd
Xsd
 
Xml material
Xml materialXml material
Xml material
 
Xsd Basics R&D with ORACLE SOA
Xsd Basics R&D with ORACLE SOAXsd Basics R&D with ORACLE SOA
Xsd Basics R&D with ORACLE SOA
 
E13882== ORACLE SOA COOK BOOK
E13882== ORACLE SOA COOK BOOKE13882== ORACLE SOA COOK BOOK
E13882== ORACLE SOA COOK BOOK
 
Web services tutorial
Web services tutorialWeb services tutorial
Web services tutorial
 
While R&D WITH ORACLE SOA
While R&D WITH ORACLE SOAWhile R&D WITH ORACLE SOA
While R&D WITH ORACLE SOA
 
Synch calling asynchadd
Synch calling asynchaddSynch calling asynchadd
Synch calling asynchadd
 
Stored procedure
Stored procedureStored procedure
Stored procedure
 
Mediator-ORACLE SOA
Mediator-ORACLE SOAMediator-ORACLE SOA
Mediator-ORACLE SOA
 
Manual device+settings ORACLE SOA
Manual device+settings ORACLE SOAManual device+settings ORACLE SOA
Manual device+settings ORACLE SOA
 
Jndicreation of database adapter
Jndicreation of database adapterJndicreation of database adapter
Jndicreation of database adapter
 
Humantask MAKE EASY DUDE
Humantask  MAKE EASY DUDEHumantask  MAKE EASY DUDE
Humantask MAKE EASY DUDE
 
File2db
File2dbFile2db
File2db
 
Exceptionhandling4remote fault
Exceptionhandling4remote faultExceptionhandling4remote fault
Exceptionhandling4remote fault
 
Dvm
DvmDvm
Dvm
 
whileloop
whileloopwhileloop
whileloop
 
Compensation
CompensationCompensation
Compensation
 

Recently uploaded

APIs for Browser Automation (MoT Meetup 2024)
APIs for Browser Automation (MoT Meetup 2024)APIs for Browser Automation (MoT Meetup 2024)
APIs for Browser Automation (MoT Meetup 2024)
Boni García
 
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket ManagementUtilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate
 
Launch Your Streaming Platforms in Minutes
Launch Your Streaming Platforms in MinutesLaunch Your Streaming Platforms in Minutes
Launch Your Streaming Platforms in Minutes
Roshan Dwivedi
 
A Study of Variable-Role-based Feature Enrichment in Neural Models of Code
A Study of Variable-Role-based Feature Enrichment in Neural Models of CodeA Study of Variable-Role-based Feature Enrichment in Neural Models of Code
A Study of Variable-Role-based Feature Enrichment in Neural Models of Code
Aftab Hussain
 
SWEBOK and Education at FUSE Okinawa 2024
SWEBOK and Education at FUSE Okinawa 2024SWEBOK and Education at FUSE Okinawa 2024
SWEBOK and Education at FUSE Okinawa 2024
Hironori Washizaki
 
May Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdfMay Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdf
Adele Miller
 
Atelier - Innover avec l’IA Générative et les graphes de connaissances
Atelier - Innover avec l’IA Générative et les graphes de connaissancesAtelier - Innover avec l’IA Générative et les graphes de connaissances
Atelier - Innover avec l’IA Générative et les graphes de connaissances
Neo4j
 
GOING AOT WITH GRAALVM FOR SPRING BOOT (SPRING IO)
GOING AOT WITH GRAALVM FOR  SPRING BOOT (SPRING IO)GOING AOT WITH GRAALVM FOR  SPRING BOOT (SPRING IO)
GOING AOT WITH GRAALVM FOR SPRING BOOT (SPRING IO)
Alina Yurenko
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
Safe Software
 
GraphSummit Paris - The art of the possible with Graph Technology
GraphSummit Paris - The art of the possible with Graph TechnologyGraphSummit Paris - The art of the possible with Graph Technology
GraphSummit Paris - The art of the possible with Graph Technology
Neo4j
 
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing SuiteAI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
Google
 
Why Mobile App Regression Testing is Critical for Sustained Success_ A Detail...
Why Mobile App Regression Testing is Critical for Sustained Success_ A Detail...Why Mobile App Regression Testing is Critical for Sustained Success_ A Detail...
Why Mobile App Regression Testing is Critical for Sustained Success_ A Detail...
kalichargn70th171
 
A Sighting of filterA in Typelevel Rite of Passage
A Sighting of filterA in Typelevel Rite of PassageA Sighting of filterA in Typelevel Rite of Passage
A Sighting of filterA in Typelevel Rite of Passage
Philip Schwarz
 
2024 eCommerceDays Toulouse - Sylius 2.0.pdf
2024 eCommerceDays Toulouse - Sylius 2.0.pdf2024 eCommerceDays Toulouse - Sylius 2.0.pdf
2024 eCommerceDays Toulouse - Sylius 2.0.pdf
Łukasz Chruściel
 
Fundamentals of Programming and Language Processors
Fundamentals of Programming and Language ProcessorsFundamentals of Programming and Language Processors
Fundamentals of Programming and Language Processors
Rakesh Kumar R
 
What is Augmented Reality Image Tracking
What is Augmented Reality Image TrackingWhat is Augmented Reality Image Tracking
What is Augmented Reality Image Tracking
pavan998932
 
Graspan: A Big Data System for Big Code Analysis
Graspan: A Big Data System for Big Code AnalysisGraspan: A Big Data System for Big Code Analysis
Graspan: A Big Data System for Big Code Analysis
Aftab Hussain
 
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Mind IT Systems
 
Using Xen Hypervisor for Functional Safety
Using Xen Hypervisor for Functional SafetyUsing Xen Hypervisor for Functional Safety
Using Xen Hypervisor for Functional Safety
Ayan Halder
 
Vitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke Java Microservices Resume.pdfVitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke
 

Recently uploaded (20)

APIs for Browser Automation (MoT Meetup 2024)
APIs for Browser Automation (MoT Meetup 2024)APIs for Browser Automation (MoT Meetup 2024)
APIs for Browser Automation (MoT Meetup 2024)
 
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket ManagementUtilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
 
Launch Your Streaming Platforms in Minutes
Launch Your Streaming Platforms in MinutesLaunch Your Streaming Platforms in Minutes
Launch Your Streaming Platforms in Minutes
 
A Study of Variable-Role-based Feature Enrichment in Neural Models of Code
A Study of Variable-Role-based Feature Enrichment in Neural Models of CodeA Study of Variable-Role-based Feature Enrichment in Neural Models of Code
A Study of Variable-Role-based Feature Enrichment in Neural Models of Code
 
SWEBOK and Education at FUSE Okinawa 2024
SWEBOK and Education at FUSE Okinawa 2024SWEBOK and Education at FUSE Okinawa 2024
SWEBOK and Education at FUSE Okinawa 2024
 
May Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdfMay Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdf
 
Atelier - Innover avec l’IA Générative et les graphes de connaissances
Atelier - Innover avec l’IA Générative et les graphes de connaissancesAtelier - Innover avec l’IA Générative et les graphes de connaissances
Atelier - Innover avec l’IA Générative et les graphes de connaissances
 
GOING AOT WITH GRAALVM FOR SPRING BOOT (SPRING IO)
GOING AOT WITH GRAALVM FOR  SPRING BOOT (SPRING IO)GOING AOT WITH GRAALVM FOR  SPRING BOOT (SPRING IO)
GOING AOT WITH GRAALVM FOR SPRING BOOT (SPRING IO)
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
 
GraphSummit Paris - The art of the possible with Graph Technology
GraphSummit Paris - The art of the possible with Graph TechnologyGraphSummit Paris - The art of the possible with Graph Technology
GraphSummit Paris - The art of the possible with Graph Technology
 
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing SuiteAI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
 
Why Mobile App Regression Testing is Critical for Sustained Success_ A Detail...
Why Mobile App Regression Testing is Critical for Sustained Success_ A Detail...Why Mobile App Regression Testing is Critical for Sustained Success_ A Detail...
Why Mobile App Regression Testing is Critical for Sustained Success_ A Detail...
 
A Sighting of filterA in Typelevel Rite of Passage
A Sighting of filterA in Typelevel Rite of PassageA Sighting of filterA in Typelevel Rite of Passage
A Sighting of filterA in Typelevel Rite of Passage
 
2024 eCommerceDays Toulouse - Sylius 2.0.pdf
2024 eCommerceDays Toulouse - Sylius 2.0.pdf2024 eCommerceDays Toulouse - Sylius 2.0.pdf
2024 eCommerceDays Toulouse - Sylius 2.0.pdf
 
Fundamentals of Programming and Language Processors
Fundamentals of Programming and Language ProcessorsFundamentals of Programming and Language Processors
Fundamentals of Programming and Language Processors
 
What is Augmented Reality Image Tracking
What is Augmented Reality Image TrackingWhat is Augmented Reality Image Tracking
What is Augmented Reality Image Tracking
 
Graspan: A Big Data System for Big Code Analysis
Graspan: A Big Data System for Big Code AnalysisGraspan: A Big Data System for Big Code Analysis
Graspan: A Big Data System for Big Code Analysis
 
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
 
Using Xen Hypervisor for Functional Safety
Using Xen Hypervisor for Functional SafetyUsing Xen Hypervisor for Functional Safety
Using Xen Hypervisor for Functional Safety
 
Vitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke Java Microservices Resume.pdfVitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke Java Microservices Resume.pdf
 

weblogic perfomence tuning

  • 1. Xavier Cosultants Weblogic Performance Tuning 1.What Parameters to tune 1.1 OS level parameters to tune Typically most error conditions are TCP tuning parameter related and are caused by the operating system’s failure to release old sockets from a close_wait call. Common errors are “connection refused”, “too many open files” on the server-side, and “address in use: connect” on the client-side. In most cases, these errors can be prevented by adjusting the TCP wait_time value and the TCP queue size.
  • 2. Xavier Cosultants /dev/tcp tcp_time_wait_interval /dev/tcp tcp_conn_req_max_q 1.2 JVM level parameters to tune -Xms & -Xmx parameters to the same value Specify –XX:Permsize & -XX:MaxPermSize parameters JVM Architecture -XX:NewSize -XX:MaxNewSize -XX:SurvivorRatio Total JVM Heap (Xms Xmx) = Young + Tenured(also called Old) Young = Eden + From (SS1) + To (SS2) Many people configure the JVM Object Heap size with the total JVM size. The Heap size does not include permgen space. So, JVM size = Object Heap size ( Xmx) + PermGen size ( -XX:PermGen – XX:MaxPermGen 1.2.1 How to Enable GC log for JVM SUN JDK JAVA_OPTIONS="${JAVA_OPTIONS} -XX:+HeapDumpOnOutOfMemoryError -verbose:gc -XX:+PrintGCTimeStamps -XX:+PrintGCDetails -Xloggc:${LOGDIR}/gc.log" JROCKIT JAVA_OPTIONS="$JAVA_OPTIONS -DDebugSecurityAtn=true -DDebugSSL=true -Xverbose:memory -Xverboselog:${LOGDIR}/gc.lo EDEN ( Young Gen) S2 PermGem -XX:PermGen -XX:MaxPermGen S1 Tenured ( Old Gen)
  • 3. Xavier Cosultants Keep the server in “Production Mode” ( in production mode the parameters of the weblogic servers are configured for highest performance) 1.3 Server level parameters to tune 1.3.1 Workmanagers Each workmanager will have three parameters a) Request Class a. ResponseTime Request Class b. FairShare Request Class c. Context Request Class b) Min. Thread Constraint c) Max Thread Constraint d) Capacity Constraint Advantages of WM: Allows each application to have its own workmanager. We can efficiently allocate the worked threads as per the requirements of the application. For eg. A heavy application will be assigned a work manger with high no. of threads and a light application can be assigned a light workmanager. 1.3.2 Execute queues Execute Queues were available in the old version of weblogic. ( 8.1) From 9.2 onwards WorkManagers were introduced. Execute Queues have a pool of threads associated with him, and all the incoming requests to one weblogic JVM will land to default execute queue. 1.3.2 Difference between Work Managers & Execute Queues Work managers provide you the ability to better control thread utilization (server performance) than execute-queues, primarily due to the many ways that you can specify scheduling guidelines for the priority-based thread pool. These scheduling guidelines can be set either as numeric values or as the capacity of a server-managed resource, like a JDBC connection pool. Number of Available Socket Readers
  • 4. Xavier Cosultants 1.3.3 Struck Threads A stuck thread is a thread that cannot complete its current work or accept new work because of an unfinished work or a deadlock. WebLogic Server automatically detects when a thread in an execute queue becomes “stuck.” StruckThreadMaxTime 1.3.4 Tuning Muxer SocketReaders are nothing but Muxer Threads. SOCKET READERS – threads  these threads use software packages. These ‘software packages” are called Muxers. So, a socket reader using a software package called “muxer” is called a muxer thread. Muxers are “software The socket Muxer manages the server’s existing socket connections. It first determines which sockets have incoming requests waiting to be processed. It then reads enough data to determine the protocol and dispatches the socket to an appropriate runtime layer based on the protocol. In the runtime layer, the socket muxer threads determine which execute thread queue to be used and delegates the request accordingly. Backlog buffering The Accept Backlog parameter specifies how many Transmission Control Protocol (TCP) connections can be buffered in a wait queue JDBC level parameters to tune Pool size - keep the optimal value for “initial capacity” , max capacity & capacity increment. TestConnectionsOnReserve – checks the connections before giving to application. It minimizes the possibility of delivering an invalid connection to the application. JMS level parameters to tune
  • 5. Xavier Cosultants Persistant store Message size & Queue Size Bridge How to force garbage collection & threaddump from console Servers  <server-name>  monitoring  performance. A thread dump can also be taken using kill -3 <PID> Theread dump will be stored in console log. What are the Types of Garbage Collection (For sun HOT SPOT JVM)
  • 6. Xavier Cosultants Garbage collections are divided into 4 major types based on how the collection is done in Young Generation & Old Generation. For Each generation either SERIAL Or PARALLEL algorithms are used. Both these Serial & Parallel algorithms are STOP-THE-WORLD algorithms. Which means the application will come to stand still ( or stops ) when the GC is happening. So what is the difference ? SERIAL – stop-the-world & Uses single Thread PARALLE – stop-the-world BUT uses Multiple Threads. Even though PARALLEL GC stops the application, but because it is using multiple threads ( enabled in multi cpu hardware) the GC time is less than a serial collector. For this reason, PARALLEL GC is also called, through-put GC. Apart from stop-the-world gc there is another GC , that doesn’t stop the application completely but does it in small pauses. Its called Concurrent Mark Sweep GC. TYPE OF GC Young Generation Old Generatio n Remarks SerialGC (-XX:+UseSerialGC) Serial Serial Types of GC flow chart STOP-THE-WORLD GC SERIAL GC -XX:+UseSerialGC PARALLEL GC -XX:+UseParallelGC Concurrent Mark Sweep GC (CMS) : +UseConcurrentMarkSweep GC PARALLEL COMPACTING GC -XX:+UseParallelOldGC
  • 7. Xavier Cosultants ParallGC (-XX:+UseParallelGC) Parallel Serial Parallel Compacting (-XX:+UseParallelOldGC) Parallel Parallel Concurrent Mark Sweep GC (-XX:+UseConcMarkSweepGC) Parallel CMS So from above table, +UseParallelOldGC & CMS can not be used together. +XX:-UseParallelNewGC can be used with –XX:+UseConcMarkSweepGC Sample Output of GC: What to Look for in GC logs.. • Occurrences of garbage collections that were initiated by CICS when the heap utilization threshold was reached. • Occurrences of garbage collections that were caused by an allocation failure. • The amount of free space in the storage heap, in bytes and as a percentage. For Version 1.4.2, the output shows only the amount of free space after a garbage collection, but with Version 5, the amount of free space before a garbage collection is also shown. • The time taken for each garbage collection, in milliseconds. • Occurrences of heap expansion. • The amount by which a storage heap was expanded and the new size of the heap, in bytes.