ORACLG Oracle Press Advanced Tuning for JD Edwards EnterpriseOne Implementations
Foreword Acknowledgments Introduction... xv xvii xix 1 Outline of a Structured Tuning Methodology 1 Overview 3 Benchmarks 4 Merits of Continuous Performance Tuning 5 Business Drivers 6 Automated Scripting/Server Manager 6 Conclusion 7 2 Understanding the Components of Performance Tuning 9 Creating a Performance Tuning Strategy 10 System Boundaries 13 Operating System 14 OS/400 15 Linux 15 Microsoft Windows 15 AIX 15 HP-UX 15 Operating System Levels 15 Patching the Operating System 17 Disk Considerations 18 Disk 19 Speeds Disk 19 Layout Storage Area Network (SAN) 21 Database Components 25 Types of Databases 25 Database Layout 27 Vii
viii Advanced Tuning for JD Edwards EnterpriseOne Implementations General Tuning Levers 28 System Global Area (SCA) 28 Program Global Area (PGA) 28 TEMPDB 29 Network 29 Network Cards 32 Packet Priority 32 Generate Server Layout 32 Direct Application Tuning 33 User Interface 33 Application Tier 34 Batch Tier 35 Interfaces 36 Common Performance Tools 37 Summary 44 3 Building Blocks of an EnterpriseOne Implementation 45 Types of EnterpriseOne Servers 47 Enterprise (All-in-One) 48 Application Logic 49 Batch/Universal Batch Engine 53 HTML/Java Application Server 54 Database Server 57 WebCenter/Portal Server 58 Business Services/Transaction Server 59 Deployment Server 59 Enterprise/Application/Batch Servers 60 Kernels 61 Batch Processes 65 Business Functions 66 Java 69 Configuration Settings 69 HTM L/JAS Servers 70 Application Server-specific Settings 72 EnterpriseOne Web/JAS Server Configuration Settings 78 Database Server 81 Purpose 81 Configuration Aspects 82 WebCenter/Portal Server 82 Portal Configuration Settings 83 Business Services/Transaction Server 83 Configuration Settings 84, Deployment Server 85 Summary 86
Contents ix 4 Implementing a Performance Tuning Methodology 87 Performance Tuning Methodology Basics 90 Parts of the Methodology 92 Having a Structured Plan 100 Applying the Methodology with Benchmarks 104 Conclusion 104 5 Understanding Base EnterpriseOne Technical Architecture 105 Basic Principles of Performance Tuning 106 Principle of Gears and Cogs 107 Principle of Peeling the Onion 107 Understanding the EnterpriseOne Technical Flexible Architecture 108 Complexity and Implementation Types 109 EnterpriseOne Environments 109 Complexity Categories 111 EnterpriseOne Technical Components 120 J AS Server 121 EnterpriseOne Logic Server 121 EnterpriseOne Batch Server 121 Database Server 121 EnterpriseOne Process Flow 123 Starting EnterpriseOne Services 124 EnterpriseOne Requests 125 EnterpriseOne Call Object Kernel 125 EnterpriseOne Security Kernel 125 EnterpriseOne Metadata Kernel 125 EnterpriseOne Queue and UBE Kernels 125 Defining the Size of an EnterpriseOne Implementation 126 Interactive and Batch Processing 126 EDI Processing 126 Modules of Integration 127 Horizontal and Vertical Scaling of the Architecture 128 Implementation Stages of EnterpriseOne Architecture 131 Designing the Architecture 132 Installing the Components 133 Configuring and Validating the Installation 135 Customizing the Implementation 136 Extending Nodes/Resources 137 Directing Traffic by Implementing Hardware Switches 138 Setting Up Security 138 Further Testing and Validation 139 Training 140 Bringing It All Together 141
X Advanced Tuning for JD Edwards EnterpriseOne Implementations 6 Tuning by Tier: The Web Tier 143 Isolating Performance Issues to a JAS Server 144 Components of the JAS Architecture 145 Tuning the J2EE Server 146 Tuning the HTTP Server 153 Tuning the JAS Layer 157 Using Server Manager to Detect Issues in the JAS Server 159 WebLogic Application Server-specific Tuning 167 WebLogic Console and JRockit Command-Line Arguments 167 Memory Considerations 168 WebSphere Application Server-specific Tuning 171 WebSphere Class Sharing Option 171 WebSphere Heap Fragmentation 172 Tuning WebSphere on System i 174 Garbage Collection and Its Interpretation 175 End User Browser Tuning 187 Internet Explorer 188 Firefox Browser 190 Wide Area Network Tuning 190 Web Timeouts and Their Interrelationships 192 Webserver Caches 194 TCP/IP Level Tuning and Its Impact on Web Tier Performance 195 Conclusion 198 7 Tuning by Tier: The Foundation Tier 199 EnterpriseOne JDB Infrastructure 200 EnterpriseOne Database Middleware Features 201 User Sign-on 201 Database Connections 202 SQL DML Statements 203 Transactions 204 JDB Connection Pooling 206 SQL DDL Statements 207 Auditing 208 Incoming Database Connections 208 Excessive Oracle Database Connections 209 SQL Packages for iseries DB2 Databases 210 EnterpriseOne Kernel Infrastructure 216 Crashed Processes, or Zombie Kernels 217 Call Object Kernels or Runbatch with High CPU or Deadlocked Processes 226 Call Object Kernels or Runbatch Crash Due to Out of Memory 230
Contents xi Kernel Processes and Common Tuning Recommendations 249 JDENET Reserved Kernel 250 UBE Kernel 250 Replication Kernel 251 Security Kernel 251 Lock Manager Kernel 252 Call Object Kernel 252 JDBNet Kernel 253 Package Install Kernel 253 Management Kernel 253 Scheduler Kernel 254 Package Build Kernel 254 UBE Subsystem Kernel 254 Workflow Kernel 255 Queue Kerne! 255 XML Transaction Kernel 255 Event Notification Kernel 255 Interoperability Event Observer Kernel 256 XML Dispatch Kernel..256 XTS Kernel 256 XML Service Kernel 256 Metadata Kernel 257 XML Publisher / Bl Publisher Kernel 257 Conclusion 258 8 Tuning by Tier: The Database Tier (Oracle) 259 Database Tuning Overview 260 Principle 1: The Principle of Best Benefit 260 Principle 2: Trust, but Verify Tuning Changes 261 Principle 3: Review Previous Tuning Changes When a New Change Is Introduced 261 EnterpriseOne Load Profiles 261 Interactive Users 262 Batch Processes 263 Aspects of Database Performance Tuning 264 Tuning After the Design 266 Using Metric Statistics 266 Performance Tuning Diagnostic Checklist 268 Tuning the Operating System 271 Tuning the EnterpriseOne Application 273 Analysis Tools for the EnterpriseOne Application 274 Tuning the EnterpriseOne Product Life Cycle 275 EnterpriseOne SQL Statement Tuning 277
xii Advanced Tuning for JD Edwards EnterpriseOne Implementations Tuning the Oracle Database Instance 278 The Oracle Database Time Model 280 DB Time and DB Processor Time Ratios 281 Performance Views 283 Dynamic Oracle WAIT Events 284 Oracle Alert Log 286 User Trace Files 287 Oracle Database Monitoring and Tuning Tools 287 Oracle Enterprise Manager (OEM) 292 Tuning Other Oracle Resources 293 Oracle Full Table Scans and SQL Joins 294 Oracle Automated Management Configurations 295 Shared Pool Performance Issues 296 Oracle Database Buffer Cache Performance Issues 298 Program Global Area Memory and Temporary Space 299 Oracle Database Performance and Disk Architecture 301 Review the Logs 303 Sufficient Swap Space 304 Operating System Patches 305 Interprocess Communication Kernel Memory Settings 305 Processor, Memory, and Disk Configuration 306 Conclusion 307 9 Tuning by Tier: The Database Tier (Microsoft SQL Server and IBM System i) 309 Tuning Microsoft SQL Server 310 Reviewing the Logs 310 Operating System/Database Patches 314 Microsoft SQL Server Service Account Privileges/Permissions 317 SQL Server CPU, Memory, Network, and Disk Configuration 317 CPU or Processors 320 Memory 324 Disk Subsystem 326 Network 331 SQL Server Configuration Ideas 332 Database Configuration 332 Production Parameter Settings 335 Performance Monitoring and Index Review 337 Dynamic Management View Reports 342 Database and Backup Compression 347 Read Committed Snapshot Isolation (RCSI) 350
Contents xiii Tuning IBM System i Database 354 Performance Collection 355 Database Index Configuration 355 JDE.INI and QAQQINI Settings 357 Job Prestart Allocations 358 TCP/IP Buffer Size 361 Job Class Time Slices 363 Batch Subsystem Priorities 366 Memory Pools 366 10 Tuning by Tier: The Interface Tier 373 Business Services Server 374 JVM Arguments and BSSV 3 74 Clustering 376 Load Balancing 378 Transaction Server (Real-Time Events) 380 Clustering Transaction Server 380 Web and Transaction Server Technologies 381 Monitoring Events Using Administrative Tools 384 Mobility Applications 399 New Technologies for Mobile 399 Mobile Architecture 401 Security Considerations 402 ADF Tuning Tips 403 11 Virtualization 405 Benefits of Virtualization 406 Oracle VM 407 Oracle VM Tools 407 Monitoring the Functions of Oracle VM Manager 2.2.0 413 JD Edwards VM Templates with Oracle VM 416 Tips for Using Oracle VM Templates 416 Oracle VMVirtualBox 418 VMware for Servers and Workstations 418 VMware Deployment Specifications 419 VMware Tools with Veeam Reporting 420 Veeam Reporting 425 JD Edwards Tuning for Virtualization 429 BSSVJDBJ.INI 429 WebClientJDBJ.INI 430 EnterpriseServerJDE.INI 431
xiv Advanced Tuning for JD Edwards EnterpriseOne Implementations 12 Oracle Exadata Database Machine and Exalogic Elastic Cloud 433 and the "Exa" Revolution 434 D Edwards EnterpriseOne Fabric-based Technologies 436 Fabric-based Technologies: Advantages and Disadvantages 438 Fabric-based Technology for Exadata and Exalogic 439 Exadata Database Machine 442 Exalogic Elastic Cloud 442 Exalogic Elastic Cloud Application Stack 444 Implementing Exadata and Exalogic for EnterpriseOne 446 Implementing EnterpriseOne on Exalogic 448 Implementing EnterpriseOne on an Exadata Database Machine 456... Exadata and Exalogic Performance Tuning for EnterpriseOne 463 Interactive User Processing Profile 463 Batch Processing Profile 464 Summary 466 13 Load Balancing/Scalability Opportunities for EnterpriseOne 467 Hardware- vs. Software-based Network Load Balancers 471 Hardware-based Network Load Balancing 471 Software-based Network Load Balancers 472 Software Solutions 473 Web/HTTP Virtual Server Names 473 EnterpriseOne Virtual Server Names 476 EnterpriseOne JDE Kernel Process Load Balancing 484 Network Load Balancer Solutions 487 Network Hardware and Software Load Balancer Considerations... 488 Examples of Load Balancing an EnterpriseOne Configuration 492 HTML/]AS: Presentation Layer 493 Application Logic 495 L BE Batch 499 UBE Load Balancing 502 Business Serv ices 506 S^iifflimia.nv 508 Itofa 511