Oracle WebLogic Server 11g: Monitor and Tune Performance



Similar documents
Oracle WebLogic Server 10g R3: Monitoring and Performance Tuning

Oracle WebLogic Server 11g Administration

CHAPTER 1 - JAVA EE OVERVIEW FOR ADMINISTRATORS

Contents 1 Overview 2 Introduction to WLS Management Services iii

WEBLOGIC ADMINISTRATION

Oracle JRockit Mission Control Overview

MagDiSoft Web Solutions Office No. 102, Bramha Majestic, NIBM Road Kondhwa, Pune Tel: /

No.1 IT Online training institute from Hyderabad URL: sriramtechnologies.com

Oracle WebLogic Server 11g: Administration Essentials

Oracle WebLogic Server 11g: Administration Essentials

Oracle Fusion Middleware

Oracle Identity and Access Management: The All-In-One Seminar Student Guide

An Oracle White Paper September Advanced Java Diagnostics and Monitoring Without Performance Overhead

WebSphere Server Administration Course

This training is targeted at System Administrators and developers wanting to understand more about administering a WebLogic instance.

IBM WebSphere Server Administration

WebLogic Server Admin

Oracle Weblogic. Setup, Configuration, Tuning, and Considerations. Presented by: Michael Hogan Sr. Technical Consultant at Enkitec

Oracle Application Server 10g: Administer High Availability

KillTest. 半 年 免 费 更 新 服 务

Analytics: Pharma Analytics (Siebel 7.8) Student Guide

Oracle Communications WebRTC Session Controller: Basic Admin. Student Guide

Basic TCP/IP networking knowledge of client/server concepts Basic Linux commands and desktop navigation (if don't know we will cover it )

Oracle WebLogic Server

WebLogic Server 11g Administration Handbook

Oracle BI 10g: Analytics Overview

Tuning Your GlassFish Performance Tips. Deep Singh Enterprise Java Performance Team Sun Microsystems, Inc.

Exam : Oracle 1Z : Oracle WebLogic Server 10gSystem Administration. Version : DEMO

Oracle BI Discoverer Administrator 11g: Develop an EUL

Code:1Z Titre: Oracle WebLogic. Version: Demo. Server 12c Essentials.

Oracle WebLogic Server

Course Description. Course Audience. Course Outline. Course Page - Page 1 of 5

Mission-Critical Java. An Oracle White Paper Updated October 2008

5 Days Course on Oracle WebLogic Server 11g: Administration Essentials

Oracle TimesTen and In-Memory Database Cache 11g

Oracle BPA Suite: Model and Implement Business Processes Volume I Student Guide

Maximum Availability Architecture. Oracle Best Practices For High Availability. Backup and Recovery Scenarios for Oracle WebLogic Server: 10.

Tuning WebSphere Application Server ND 7.0. Royal Cyber Inc.

JBS-102: Jboss Application Server Administration. Course Length: 4 days

Performance Tuning for Oracle WebCenter Content 11g: Strategies & Tactics CHRIS ROTHWELL & PAUL HEUPEL FISHBOWL SOLUTIONS, INC.

Automatic Service Migration in WebLogic Server An Oracle White Paper July 2008

Blackboard Learn TM, Release 9 Technology Architecture. John Fontaine

JD Edwards EnterpriseOne 9.1 Clustering Best Practices with Oracle WebLogic Server

Liferay Performance Tuning

MEASURING WORKLOAD PERFORMANCE IS THE INFRASTRUCTURE A PROBLEM?

Learn Oracle WebLogic Server 12c Administration For Middleware Administrators

NetIQ AppManager for WebLogic Server UNIX. Management Guide

JBoss Seam Performance and Scalability on Dell PowerEdge 1855 Blade Servers

Introduction to Sun ONE Application Server 7

Qualogy M. Schildmeijer. Whitepaper Oracle Exalogic FMW Optimization

How To Improve Performance On An Asa 9.4 Web Application Server (For Advanced Users)

An Oracle White Paper July Oracle Primavera Contract Management, Business Intelligence Publisher Edition-Sizing Guide

Oracle WebLogic Thread Pool Tuning

Oracle Fusion Middleware

Oracle Stellent 10gR3: Information Rights Management

Oracle Corporation Proprietary and Confidential

Tomcat Tuning. Mark Thomas April 2009

An Oracle White Paper October BI Publisher 11g Scheduling & Apache ActiveMQ as JMS Provider

WEBLOGIC SERVER MANAGEMENT PACK ENTERPRISE EDITION

Oracle Enterprise Manager

NetFlow Collection and Processing Cartridge Pack User Guide Release 6.0

Siebel Application Deployment Manager Guide. Siebel Innovation Pack 2013 Version 8.1/8.2 September 2013

Java Monitoring. Stuff You Can Get For Free (And Stuff You Can t) Paul Jasek Sales Engineer

An Oracle White Paper May Ready for Business: Oracle GlassFish Server

THE BUSY DEVELOPER'S GUIDE TO JVM TROUBLESHOOTING

System Administration of Windchill 10.2

Oracle Database 10g: Parallelism and Scalability Overview Seminar

Winning the J2EE Performance Game Presented to: JAVA User Group-Minnesota

An Oracle White Paper October Frequently Asked Questions for Oracle Forms 11g

WebSphere Architect (Performance and Monitoring) 2011 IBM Corporation

Oracle Enterprise Manager. Description. Versions Supported

Flexible Routing and Load Control on Back-End Servers. Controlling the Request Load and Quality of Service

Oracle Net Services for Oracle10g. An Oracle White Paper May 2005

Oracle SOA Suite 11g: Essential Concepts Student Guide

WebLogic Server: Installation and Configuration

ITG Software Engineering

Oracle Fusion Middleware

Oracle TimesTen In-Memory Database on Oracle Exalogic Elastic Cloud

Apache and Tomcat Clustering Configuration Table of Contents

An Oracle Benchmarking Study February Oracle Insurance Insbridge Enterprise Rating: Performance Assessment

Oracle WebLogic Foundation of Oracle Fusion Middleware. Lawrence Manickam Toyork Systems Inc

WebLogic on Oracle Database Appliance: Combining High Availability and Simplicity

Oracle WebLogic Server

1Z Oracle Weblogic Server 11g: System Administration I. Version: Demo. Page <<1/7>>

2012 LABVANTAGE Solutions, Inc. All Rights Reserved.

BEAJRockit Mission Control. Using JRockit Mission Control in the Eclipse IDE

Practical Performance Understanding the Performance of Your Application

Understanding Server Configuration Parameters and Their Effect on Server Statistics

AGENDA. Introduction About Weblogic Server Weblogic Server Administration Top Ten Concepts Q & A

Robert Honeyman

Using jvmstat and visualgc to Solve Memory Management Problems

Apache Tomcat Tuning for Production

An Oracle White Paper September Oracle WebLogic Server 12c on Microsoft Windows Azure

Cognos8 Deployment Best Practices for Performance/Scalability. Barnaby Cole Practice Lead, Technical Services

Oracle Fusion Middleware

WebLogic Server Foundation Topology, Configuration and Administration

Transcription:

D61529GC10 Edition 1.0 March 2010 D66055 Oracle WebLogic Server 11g: Monitor and Tune Performance Student Guide

Author Shankar Raman Technical Contributors and Reviewer s Werner Bauer Nicole Haba Bala Kothandaraman Nagavalli Pataballa TJ Palazzolo Matthew Slingsby Serge Moiseev Editors Nita Pavitran Daniel Milne Graphic Designer Asha Thampy Publishers Pavithran Adka Jayanthy Keshavamurthy Copyright 2010, Oracle and/or it affiliates. All rights reserved. Disclaimer This document contains proprietary information and is protected by copyright and other intellectual property laws. You may copy and print this document solely for your own use in an Oracle training course. The document may not be modified or altered in any way. Except where your use constitutes "fair use" under copyright law, you may not use, share, download, upload, copy, print, display, perform, reproduce, publish, license, post, transmit, or distribute this document in whole or in part without the express authorization of Oracle. The information contained in this document is subject to change without notice. If you find any problems in the document, please report them in writing to: Oracle University, 500 Oracle Parkway, Redwood Shores, California 94065 USA. This document is not warranted to be error-free. Restricted Rights Notice If this documentation is delivered to the United States Government or anyone using the documentation on behalf of the United States Government, the following notice is applicable: U.S. GOVERNMENT RIGHTS The U.S. Government s rights to use, modify, reproduce, release, perform, display, or disclose these training materials are restricted by the terms of the applicable Oracle license agreement and/or the applicable U.S. Government contract. Trademark Notice Oracle and Java are registered trademarks of Oracle and/or its affiliates. Other names may be trademarks of their respective owners.

Contents Preface 1 Course Introduction Objectives 1-2 Agenda 1-3 Target Audience 1-4 Course Objectives 1-5 Course Agenda 1-6 Course Practice Environment 1-7 Classroom Guidelines 1-8 Summary 1-9 Quiz 1-10 2 Introduction to Performance Monitoring Objectives 2-2 Road Map 2-3 Performance Terminology 2-4 Scalability 2-5 Performance Testing 2-6 Benchmarking 2-7 Load and Stress Testing 2-8 Why Is Testing Important? 2-9 Performance Testing Methodology 2-10 Performance Testing Concerns 2-11 Performance Testing Methodology Tips 2-12 Metrics 2-13 Results Reporting 2-14 Bottlenecks 2-15 Road Map 2-16 Load-Testing Tools 2-17 Choosing Testing Tools 2-18 The Grinder 2-19 The Grinder Architecture 2-20 The Grinder Agent Configuration 2-21 Installing The Grinder 2-22 iii

Running The Grinder 2-23 Setting Up a Test Directory for The Grinder 2-24 The Grinder Scripts 2-25 Recording Scripts with TCPProxy 2-26 Sample grinder.properties File 2-27 httpscript.py File 2-28 Running the Tests 2-30 Test Results 2-31 out_host-n.log 2-32 The Grinder Console 2-33 The Grinder Summary Statistics 2-35 Performance Monitoring Using the Administration Console 2-36 Oracle Enterprise Manager: Integrated Management 2-37 Oracle Application Quality Management Solutions 2-38 Oracle Application Testing Suite 2-39 Oracle Functional Testing 2-40 Oracle Load Testing 2-41 Oracle Test Manager 2-42 Web Services Testing 2-43 Road Map 2-44 CPU Bound 2-45 I/O Bound 2-46 Database Bound 2-47 Network Bound 2-48 Summary 2-49 Quiz 2-50 3 Monitoring and Tuning JRockit JVM Objectives 3-2 Java Virtual Machine (JVM) 3-3 JVM Choices 3-4 Oracle JVM Support 3-5 JVM Memory 3-6 Setting WLS JVM Arguments 3-7 Garbage Collection 3-8 Garbage Collection (GC) Types 3-9 Heap Fragments 3-10 Tuning Tradeoff: Concurrent Collection 3-11 iv

Tuning Tradeoff: Pausing to Compact 3-12 Administrator-Initiated Garbage Control 3-13 Section Summary 3-14 JRockit VM Benefits 3-15 JRockit JDK Location 3-16 JRockit Management Tools 3-17 jrcmd 3-18 JRockit Mission Control 3-19 JRockit Discovery Protocol (JDP) 3-20 JRockit Mission Control: Architecture 3-21 JVM Browser 3-22 JRockit Management Console 3-23 Management Console: General Page 3-24 Best Practices 3-25 Java Runtime Analyzer (JRA) 3-26 Mission Control JRA Features 3-27 Recording Engine 3-28 Initiating Recording by Using the Management Console 3-29 JRA Analysis Using JRockit Mission Control 3-30 JRA General Tab 3-31 JRA Memory: Heap Contents 3-32 JRA Memory: Object Statistics 3-33 Comparing Recorded JRA Sessions 3-34 Initiating Recording by Using jrcmd 3-35 Memory Leaks 3-36 JRockit Memory Leak Detector 3-37 Memory Leak Detector (MemLeak) Features 3-39 MemLeak: Trend Tab 3-40 MemLeak: Types Tab 3-41 JRockit Memory Leak Detector 3-42 Tips to Avoid Memory Leaks 3-43 Ctrl-Break Handler 3-44 Best Practices 3-45 Generational Garbage Collection 3-46 Generational Heap: JRockit 3-47 GCs Tab in JRA 3-48 Details of a Selected GC 3-49 Command-Line Monitor Garbage Collection 3-51 Tuning JRockit JVM 3-52 Advanced Tuning 3-54 JRockit Performance Tips 3-56 v

Detecting Low Memory Conditions by Using the Administration Console 3-58 Summary 3-59 Quiz 3-60 Practice 3-1 and 3-2 Overview: Monitoring and Tuning JRockit JVM 3-62 4 Tuning Sun HotSpot JVM Objectives 4-2 Road Map 4-3 Sun HotSpot JVM Monitoring Tools 4-4 J2SE Monitoring and Management Architecture 4-5 Java VisualVM 4-6 Java VisualVM Connections 4-7 Remote Monitoring 4-8 Java VisualVM Interface 4-9 Monitoring JVM 4-10 Monitoring Threads 4-11 Application Snapshot 4-12 Profiler Snapshot 4-13 Monitoring Heap: WLDF Console Extension 4-14 Road Map 4-15 jps 4-16 jinfo 4-18 Why Use jinfo 4-19 jstack 4-20 Road Map 4-22 Ergonomics 4-23 Ergonomics Behavior 4-24 More Ergonomics 4-25 Road Map 4-27 Server-Class Machine Detection 4-28 Setting Heap Memory Size 4-29 HotSpot JVM Generational Heap 4-30 GC Algorithms 4-31 Throughput Goal 4-32 Footprint Goal 4-33 Maximum Pause Time Goal 4-34 Evaluating GC Algorithm 4-35 64-Bit Enhancements 4-37 Road Map 4-38 Monitoring GC: XX:+PrintGC 4-39 vi

GC Manually Using the Administration Console 4-41 GC Tuning Tips 4-42 Practice 4-1 Overview: Monitoring and Tuning Sun HotSpot JVM 4-48 Summary 4-49 5 Configuring Work Managers Objectives 5-2 Road Map 5-3 WebLogic Server Threads 5-4 Monitoring a Server Thread Pool 5-5 WebLogic Server Thread Tuning 5-6 Work Manager 5-7 Default Work Manager 5-8 Request Classes 5-9 Request Class Types 5-10 Fair Share Request Class 5-11 Response Time Request Class 5-12 Context Request Class 5-13 Constraints 5-14 Maximum Threads Constraint 5-15 Minimum Threads Constraint 5-16 Capacity Constraint 5-17 Referencing Classes or Constraints 5-18 Sharing Constraints Among Work Managers 5-19 Section Summary 5-20 Road Map 5-21 Work Manager Scope 5-22 Creating Global Work Managers 5-23 Global Work Manager Component 5-24 Application-Scoped Work Managers 5-25 Web Application-Scoped Work Managers 5-26 Work Managers and Stuck Threads 5-27 Stuck Thread Work Manager: Example 5-29 Section Summary 5-30 Understanding CommonJ 5-31 Accessing CommonJ Work Managers 5-32 Mapping CommonJ to Work Managers 5-33 Section Summary 5-35 Practice 5-1 Overview: Using Work Managers 5-36 Summary 5-37 Quiz 5-38 vii

6 Tuning Other WLS Components Objectives 6-2 Domain Startup Mode 6-3 On Demand Deployment 6-4 Native IO Performance Pack 6-5 Socket Readers 6-6 Stuck Threads 6-7 Auto Restart of the Server 6-10 Garbage Collection Thresholds 6-11 Chunk Size 6-12 Tuning the Chunk Size 6-13 Tuning the Chunk Pool Size 6-14 Section Summary 6-15 Connection Backlog Buffering 6-16 Secure Sockets Layer (SSL) 6-18 Logging Considerations 6-19 Log Filters Review 6-20 Quiz 6-21 Summary 6-26 7 Tuning Web Applications Objectives 7-2 What Is a JavaServer Page? 7-3 JSP Request Processing 7-4 Precompiled JSP 7-5 Using the JSP Compiler jspc 7-6 Using the precompile Parameter 7-8 keepgenerated Parameter 7-9 Page Check Interval 7-10 verbose Parameter 7-12 Servlet Reload Check Interval 7-13 Using Web Servers for Static Content 7-14 Session Persistence Considerations 7-15 Session Persistence Cache Size 7-16 Session Timeout 7-17 Session Invalidation 7-18 Page Directive and HTTP Session 7-19 Using Custom JSP Tags 7-20 Using the WebLogic cache Tag 7-21 viii

Summary 7-22 Practice 7-1 Overview: Tuning JSP 7-23 8 Tuning JDBC Objectives 8-2 What Is JDBC? 8-3 JDBC Drivers 8-4 JDBC Architecture 8-5 Data Sources 8-6 Connection Pools 8-7 JDBC and Application Design 8-8 Connection Pool Capacity 8-9 Connection Testing 8-10 Shrink Frequency 8-12 Row Prefetch 8-13 Statement Caching 8-14 Connection Pinned to Thread 8-16 Logging Last Resource Transactions 8-17 Logging Last Resource: Example 8-18 Configuring the Logging Last Resource 8-19 Batch Updates 8-20 Combining Transactions 8-21 Transaction Isolation Levels 8-22 Database Tuning: Oracle 8-24 Database Tuning: SQL Server 8-26 Practice 8-1 Overview: Tuning JDBC 8-27 Summary 8-28 Quiz 8-29 9 Tuning EJB Objectives 9-2 Enterprise JavaBeans 9-3 Stateless Session Beans 9-5 Pool Management 9-6 Determining the Pool Size 9-7 Configuring a Stateless Session EJB Pool 9-8 Message-Driven Beans (MDB) 9-9 Configuring an MDB Pool 9-10 Configuring to Use Batching with an MDB 9-11 Stateful Session Beans 9-12 Cache Management 9-13 ix

What Happens When the Cache Fills Up? 9-15 Determining the Cache Size 9-16 Idle Timeout and Eligibility 9-17 Cache Type 9-18 Configuring a Stateful Session EJB Cache 9-19 Summary 9-20 Practice 9-1 Overview: Tuning EJB 9-21 Quiz 9-22 10 Tuning JMS Objectives 10-2 Java Message Service 10-3 WebLogic JMS Resources 10-4 WebLogic JMS Resource Configuration 10-5 JMS Quotas 10-6 Configuring a JMS Server Quota 10-7 Creating a Destination Quota 10-8 Freeing Up Memory by Paging Messages 10-9 Send Timeout 10-10 Blocking Send Policy on JMS Servers 10-11 Thresholds and Flow Control 10-12 Configuring Thresholds 10-13 Flow Control 10-14 Configuring Flow Control 10-15 Message Compression 10-16 Message Ordering 10-17 Unit of Order (UOO) 10-18 Connection Factory UOO 10-19 UOO Distributed Destination 10-20 Asynchronous Messages 10-21 Aggregation and Message Pipeline 10-22 Persistent Stores 10-23 Comparing a JDBC Store with a File Store 10-24 File Persistence 10-25 Paging 10-26 Message Buffer Size 10-27 Handling Expired Messages 10-28 Configuring the Expiration Policy 10-29 Expired Message Scanning 10-30 Messaging Preference 10-31 Design of JMS Applications 10-32 x

Design of JMS: Acknowledgement 10-34 Design of JMS: Message Selectors 10-35 Design of JMS: Transactions 10-36 Store and Forward (SAF) 10-37 SAF Tuning 10-39 Practice 10-1 Overview: Tuning JMS 10-40 Summary 10-41 Quiz 10-42 11 Tuning WLS Clusters Objectives 11-2 What Is Clustering? 11-3 Load Balancing and Failover 11-4 HTTP Session State Replication 11-5 In-Memory Replication 11-6 Persistent JDBC Replication 11-7 Persistent File Replication 11-9 Session Persistence Comparison 11-10 Replication Configuration 11-11 Section Summary 11-12 Quiz 11-13 Remote Calls 11-14 Peer-to-Peer Communication 11-16 Basic Cluster Architecture 11-17 Multitier Cluster Architecture 11-19 Metropolitan Area Network Replication 11-21 MAN Replication Example 11-22 MAN Replication Example: Server Failover 11-23 Wide Area Network (WAN) Replication 11-24 WAN Replication Example 11-25 WAN Replication Example: Cluster Failover 11-26 Configuring Cross-Cluster Replication 11-27 Advanced MAN and WAN Settings 11-28 WAN Replication Table 11-29 Oracle Coherence Overview 11-30 Coherence*Web Overview 11-32 Coherence*Web and WebLogic Clusters 11-33 Load Balancers 11-34 Hardware Load Balancers 11-35 Summary 11-37 xi

Practice 18-1 Overview: Tuning Session Persistence 11-38 Quiz 11-39 12 Tuning Operating System Resources Objectives 12-2 Road Map 12-3 CPU Usage in Linux Environment 12-4 System Monitor 12-5 sar Command 12-6 vmstat Command 12-7 iostat Command 12-8 Other Useful Commands 12-9 inode Cache 12-10 File Handles 12-11 Road Map 12-12 Windows Performance Monitoring 12-13 Performance Monitor 12-14 Performance Monitor Terms 12-15 Task Manager 12-16 Event Viewer: Application Log 12-17 Generating Task List 12-18 Windows Web Server Registry 12-19 MemCacheSize 12-20 ObjectCacheTTL 12-21 MaxCachedFileSize 12-22 Road Map 12-23 Bit Size Basics 12-24 Comparison of 32- and 64-Bit Sizes 12-25 Disadvantage of 64-Bit 12-26 Summary 12-27 Appendix A: Practice and Solutions xii