E N D
1. PIA Load Balancing, JVMs and Garbage Collection David Kurtz
Go-Faster Consultancy Ltd.
david.kurtz@go-faster.co.uk
www.go-faster.co.uk
2. PSFT Tech PUG 5.9.05 www.go-faster.co.uk 2 Who am I? DBA
Independent consultant
System Performance tuning
PeopleSoft ERP
Oracle RDBMS
Training Course
UK Oracle User Group
Unix SIG
Oak Table
www.oaktable.net Book
www.psftdba.com If who are into PeopleSoft I have written this book.
For those of you who are not familiar with PeopleSoft. E-business suite is Oracles legacy ERP system and it will be replaced with PeopleSoft!If who are into PeopleSoft I have written this book.
For those of you who are not familiar with PeopleSoft. E-business suite is Oracles legacy ERP system and it will be replaced with PeopleSoft!
3. PSFT Tech PUG 5.9.05 www.go-faster.co.uk 3 Resources If you cant hear me say so now.
Please feel free to ask questions as we go along.
The presentation will be available from
www.go-faster.co.uk
4. PSFT Tech PUG 5.9.05 www.go-faster.co.uk 4 A War Story Two forms of load balancing
Windows Network Load Balancing
IIS Proxy
PSFT Recommendations:
Red Paper HA & Clustering
5. PSFT Tech PUG 5.9.05 www.go-faster.co.uk 5 Problems Strange Pauses
Mostly to do with garbage collection
IIS Proxy wouldnt load balance
All of load on one PIA or the other
Pauses cause IIS Proxy failover
On Failover users loose their sessions
6. PSFT Tech PUG 5.9.05 www.go-faster.co.uk 6 IIS Load Balancing iisproxy.ini
WebLogicCluster=50.0.0.8:7001,50.0.0.8:17001
DynamicServerList=OFF
7. PSFT Tech PUG 5.9.05 www.go-faster.co.uk 7 IIS Load Balancing Uneven loading of PIAs caused overload of one PIA.
Duration of garbage collection with 100% of load on single PIA much higher
8. PSFT Tech PUG 5.9.05 www.go-faster.co.uk 8 How do I know the load is balanced? Web server access log
PeopleSoft Performance Monitor
PT>=8.44
Event 150: JVM Status
Event 152: Web Site Status
Event 153: Web Servlet Status
9. PSFT Tech PUG 5.9.05 www.go-faster.co.uk 9 How do I know the load is balanced?
10. PSFT Tech PUG 5.9.05 www.go-faster.co.uk 10 JVM Garbage Collection Java Command Line Options
verbosegc
Writes to weblogic.log
Xloggc:<filename>
0.000: [GC 46591K->3553K(518464K), 0.1262603 secs]
19.604: [GC 50145K->6662K(518464K), 0.3389070 secs]
70.052: [Full_GC 46565K->10901K(518464K), 0.9507536 secs]
90.967: [Full_GC 55273K->16571K(518464K), 1.1008306 secs]
11. PSFT Tech PUG 5.9.05 www.go-faster.co.uk 11 Garbage Collector Log 90.967: [Full_GC 55273K->16571K(518464K), 1.1008306 secs]
Elapsed time since JVM started
Collection type
Size of live objects before and after GC
Total space available, less permanent objects
Duration of collection
12. PSFT Tech PUG 5.9.05 www.go-faster.co.uk 12 Timestamps on GC log -XX:+PrintGCTimeStamps
But I couldnt get it to work!
13. PSFT Tech PUG 5.9.05 www.go-faster.co.uk 13 Other Garbage Collection Options -XX:+UseConcMarkSweepGC
-XX:+UseParNewGC
-XX:+CMSParallelRemarkEnabled
Caveat: These options are not presented as being any kind of panacea, but something to consider. You need to do your own testing.
BTW: I got the idea for this from a UKOUG Oracle Application Server SIG!
14. PSFT Tech PUG 5.9.05 www.go-faster.co.uk 14 -XX:+UseConcMarkSweepGC Concurrent Low Pause Collector
GC is, as far as possible, concurrent with the execution of the application.
Uses a separate thread
App is paused for shorter periods during GC
Only effective on multi-processor machines
15. PSFT Tech PUG 5.9.05 www.go-faster.co.uk 15 -XX:+UseParNewGC Parallel young generation GC with concurrent GC
for multiprocessor machines,
enables multi threaded young generation collection
Application is not paused
16. PSFT Tech PUG 5.9.05 www.go-faster.co.uk 16 -XX:+CMSParallelRemarkEnabled Reduces remark pauses
17. PSFT Tech PUG 5.9.05 www.go-faster.co.uk 17 Default Garbage Collector Individual GC duration
18. PSFT Tech PUG 5.9.05 www.go-faster.co.uk 18 Parallel Garbage Collector Individual GC duration
19. PSFT Tech PUG 5.9.05 www.go-faster.co.uk 19 Default Garbage Collector Cumulative GC duration / minute
20. PSFT Tech PUG 5.9.05 www.go-faster.co.uk 20 Parallel Garbage Collection Cumulative GC duration / minute
21. PSFT Tech PUG 5.9.05 www.go-faster.co.uk 21 Conclusion Improved GC performance does not have a great effect on Component Performance
It does reduce the strange pause giving the user a better experience
Parallel GC seems to slowly leak memory.
Possible bug in a particular JVM
I have only tested on Windows
22. PSFT Tech PUG 5.9.05 www.go-faster.co.uk 22 Questions?
23. PIA Load Balancing, JVMs and Garbage Collection David Kurtz
Go-Faster Consultancy Ltd.
david.kurtz@go-faster.co.uk
www.go-faster.co.uk