OOS-o11-103-oos-weblogic-505728.pdf

16
An Oracle Technical White Paper March 2013 Oracle Optimized Solution for Oracle WebLogic Server

Transcript of OOS-o11-103-oos-weblogic-505728.pdf

  • An Oracle Technical White Paper

    March 2013

    Oracle Optimized Solution for Oracle WebLogic Server

  • Oracle Optimized Solution for Oracle WebLogic Server

    Introduction ....................................................................................... 1

    Solution Overview ............................................................................. 2

    Integrated Enterprise Application Stack ......................................... 2

    Oracle's SPARC T-Series Servers ................................................. 3

    Solution Architecture ......................................................................... 4

    Physical Architecture ..................................................................... 4

    Virtual Architecture ........................................................................ 5

    Performance Expectations .................. Error! Bookmark not defined.

    CPU Utilization .............................................................................. 9

    Memory Utilization ......................................................................... 9

    Sizing Guidelines ............................................................................. 10

    Security: SPARC T-Series Cryptography ......................................... 10

    SPARC T-Series Cryptography Performance .............................. 11

    For More Information ....................................................................... 13

  • Oracle Optimized Solution for Oracle WebLogic Server

    1

    Introduction

    Oracle WebLogic Server has long set the enterprise gold standard for a high-performance,

    high-value application server platform. The Oracle Optimized Solution for Oracle WebLogic

    Server builds upon this success, providing a pretested and optimized architecture for deploying

    enterprise Java applications.

    Oracle Optimized Solutions provide build instructions and best practices for assembling

    best-of-breed combinations of Oracle's servers and storage, Oracle applications, and the

    Oracle Solaris operating system. Oracle's hardware and software engineers work together to

    integrate the complete stack and to ensure that Oracle applications, databases, and

    middleware are optimized with compute, storage, networking, and operating systems to deliver

    extreme performance and simplify initial deployment. Employing this pretested and

    preconfigured infrastructure can help mitigate risk, reduce complexity, and accelerate

    deployment of new applications.

    This document focuses on the configuration and performance characteristics of the Oracle

    Optimized Solution for Oracle WebLogic Server on Oracle's SPARC T-Series servers.

    The remainder of this paper describes the solution architecture, presents a test environment

    used to gather performance characterization information, and provides sizing guidelines and

    recommended optimizations in order to achieve a reliable solution.

  • Oracle Optimized Solution for Oracle WebLogic Server

    2

    Solution Overview

    The Oracle Optimized Solution for Oracle WebLogic Server features a complete infrastructure for

    deploying Oracle WebLogic Server version 12c in an enterprise environment. The following sections

    describe the integrated enterprise application stack and the underlying hardware components.

    Performance expectations, sizing recommendations and results were partly derived from the most

    recent record-setting performance test conducted using the SPECjEnterprise benchmark standardsi.

    While the architecture of the solution described in this paper departs from the test environment

    specified in the benchmark test, it is essentially a more sophisticated expression of the systems

    capabilities; taking advantage of unique Oracle product features for enhancing availability, proper

    sizing configuration, cost effectiveness, and practicality.

    This solution described in this paper omits certain details about the configuration of Oracle Database

    in favor of leaving the database options open to the end user. Ample documentation already exists,

    including a dedicated Oracle Optimized Solution for Oracle Database 11g, for deploying a

    complementary database solution.

    Note: While Oracle WebLogic Server forms a core part of the of the Oracle Fusion Middleware

    portfolio, the information in this paper is relevant only to the Oracle WebLogic Server.

    Integrated Enterprise Application Stack

    The Oracle Optimized Solution for Oracle WebLogic Server provides a complete environment for

    developing and deploying Java Platform, Enterprise Edition (Java EE) applications. The solution

    utilizes an integrated enterprise application stack that includes the Oracle Solaris 11 operating system

    with built-in Oracle Solaris virtualization and Oracle WebLogic Server.

    Oracle Solaris 11

    The Oracle Solaris 11 operating system includes innovative, built-in functionality, such as near

    wire-speed networking throughput and high availability features that deliver industry-leading

    performance. Built-in virtualization features help to optimize resource utilization, and advanced

    security features provide the isolation and control required by enterprise environments. Oracle Solaris

    Zones are used in this architecture to securely and conveniently host and deploy Java EE applications.

    Some of the major features of the Oracle Solaris 11 operating system include

    High-performance 64-bit operating environment

    Support for large memory and high-CPU-count systems

    Excellent scalability for highly threaded Java applications

    Predictive Self Healing, a feature designed to keep applications up and running

    Extensive instrumentation and diagnostic capabilities to assist performance and availability

    Specialized security features leveraging CPU cryptographic features

    Oracle Solaris Zones

  • Oracle Optimized Solution for Oracle WebLogic Server

    3

    Oracle Solaris Zones (previously called Oracle Solaris Containers in Oracle Solaris 10) allow

    kernel-level separation of applications running in a single Oracle Solaris 11 instance. As an included

    feature of the Oracle Solaris 11 operating system, Oracle Solaris Zones technology provides built-in,

    no-added-cost virtualization. Oracle Solaris Zones are rapid to deploy, impose extremely low overhead,

    and are used in this solution to separate instances of Oracle WebLogic Server.

    Oracle WebLogic Server 12c

    Oracle WebLogic Server 12c is a fully compliant Java EE 7u11 application server that is feature-rich

    and holds benchmark world records for Java EE performance. Oracle WebLogic Server 12c takes full

    advantage of the 64-bit addressable memory and also the large number of hardware threads available in

    servers such as the Oracles SPARC T5 servers, which are used in this solution.

    Oracle's SPARC T-Series Servers

    Oracle's new SPARC T5 servers run Oracle Solaris 10 and 11, both of which have demonstrated

    excellent performance and security running Java applications for enterprise workloads.

    SPARC T5based servers are especially ideal for deploying Java applications on Oracle WebLogic

    Server, due to their optimally balanced single-threaded and multithreaded performance capabilities.

    Older Java applications that were coded for and performed better on single-thread, clockspeed-centric

    servers can operate happily alongside their more-modern, multithreaded counterparts.

    Options within the SPARC T-Series family of servers include the SPARC T4-1, T4-2, T4-4, T5-2,

    T5-4, and T5-8 servers configured with one, two, four, or eight SPARC processors. The systems scale

    to a maximum configuration of up to eight 3.6-GHz processors (up to sixteen cores per processor and

    eight threads per core, for a maximum of 1024 threads), 4 TB of memory, and up to eight internal SAS

    or SSD drives in the SPARC T5-8 server.

  • Oracle Optimized Solution for Oracle WebLogic Server

    4

    Solution Architecture

    Figure 1 and the following sections describe the physical and virtual architecture of the Oracle

    Optimized Solution for Oracle WebLogic Server.

    Figure 1: The solution configuration conceptual drawing, on which the Oracle Optimized Solution for Oracle WebLogic

    Server sizing and performance profile are based.

    Physical Architecture

    The physical architecture of the Oracle Optimized Solution for Oracle WebLogic Server consists of

    dual SPARC T5-2 servers attached to a 10-GbE network switch, as shown in Figure 2.

    Figure 2: The most basic physical architecture configuration includes a pair of SPARC T-Series servers. For purposes

    of demonstration, the T5-2 is used as the primary example.

  • Oracle Optimized Solution for Oracle WebLogic Server

    5

    Since Oracles WebLogic Server scales horizontally, in larger configurations, as seen in Figure 23, this

    solution architecture may consist of four SPARC servers attached to a 10-GbE network switch using

    the on-board 10-GbE interfaces that are a standard part of the server configuration. The 10-GbE

    connectivity provides further flexibility and options for extending the function of this solution. A

    database tier, additional servers, or NAS options can be connected easily into this central network

    switch, for instance.

    Figure 3: This solution scales to a larger configuration that uses up to four SPARC servers to accommodate

    consolidation of many small HA-critical applications, or two SPARC T5-2 servers ideally suited for hosting .

    Virtual Architecture

    Using Oracle Solaris Zones, each SPARC T5 server is logically divided into two separate containers, as

    shown in Figure 4. Each container hosts an instance of Oracle WebLogic Server. The CPU and

    memory resources of the SPARC T5 server are allocated to these individual containers to help ensure

    that each one has sufficient resources available to it.

  • Oracle Optimized Solution for Oracle WebLogic Server

    6

    Figure 4: Oracle WebLogic Server runs in separate Oracle Solaris Zones on the SPARC T5 servers with the option to

    precisely allocate the exact amount of Memory and CPU resources are necessary for optimal operation.

    Given the neligible overhead and ease-of-use characteristics of Oracle Solaris Zones, it is both efficient

    and convenient to separate these multiple application server instances by installing them into different

    zones. This virtualized architecture provides flexible resource allocation, security, and scalability, as well

    as power and space savings afforded by consolidation onto a single high-performance server such as

    the SPARC T5 server. Additionally, Oracle Solaris Zones are a recognized license boundary for Oracle

    software licensing purposes.

    Extending scale and increasing resiliency from this basic unit is simply a matter of adding more server

    units and interconnecting them via the 10 GbE switch, as shown in Figure 5. At that point, Oracle

    WebLogic Server clustering could be configured to manage failover between Oracle WebLogic Server

    zones running on separate servers.

  • Oracle Optimized Solution for Oracle WebLogic Server

    7

    Figure 5: Oracle WebLogic Server clustering can be configured for increased availability and scalability of the solution.

    Tuning Guidelines

    The following tuning was performed on the SPARC T5 servers used to deploy Oracle WebLogic

    Server in the test environment.

    The following tuning was performed in the /etc/system file:

    set autoup = 345600

    set plat_disable_mempm = 1

  • Oracle Optimized Solution for Oracle WebLogic Server

    8

    The following network tuning was performed:

    ndd -set /dev/tcp tcp_conn_req_max_q 40000 ndd -set /dev/tcp tcp_conn_req_max_q0 40000 ndd -set /dev/tcp tcp_xmit_hiwat 524288 ndd -set /dev/tcp tcp_recv_hiwat 524288 ndd -set /dev/tcp tcp_smallest_anon_port 4096 ndd -set /dev/tcp tcp_naglim_def 1 ndd -set /dev/tcp tcp_time_wait_interval 10000 ndd -set /dev/tcp tcp_fin_wait_2_flush_interval 10000 ndd -set /dev/udp udp_recv_hiwat 2097152

    ndd -set /dev/udp udp_xmit_hiwat 2097152

    The following kernel tuning was performed in the /kernel/drv/ixgbe.conf file to configure the

    number of transmit queues, the number of receive queues, and the interrupt throttling rate used by the

    network driver:

    ixgbe[4/6/8/10/12/14/16/18]: intr_throttling=3000 ixgbe[5/7/9/11/13/15/17/19]: intr_throttling=500

    Performance Expectations

    Oracle test engineers looked at system resource utilization and throughput metrics as they scaled the

    number of transactions upward. The performance results from this testing were used to determine the

    recommended sizing guidelines for different configurations.

    It is important to examine throughput and response-time metrics together when analyzing application

    performance and configuration scalability. As a rule of thumb, as the number of users increases, there

    is a corresponding increase in throughput. As the number of transactions increases, response time

    must remain within acceptable bounds.

    The average observed latency during testing was 0.170 seconds per transaction, demonstrating the

    solution's ability to handle large enterprise-level workloads with outstanding user response time.

    While Figure 7 illustrates more-granular performance results for throughput on a sample Java

    application simulating a demandingbut generally typicalJava application. Ultimately, the

    benchmark tests distill into one standardized throughput score known as EjOPS, or Enterprise Java

    Operations Per Second. This score is an objective and realistic evaluation of a systems performance

    running a complex Java application.

  • Oracle Optimized Solution for Oracle WebLogic Server

    9

    Figure 6: Performance results demonstrating the performance progression (in transactions/second) between the

    SPARC T4 server range and the SPARC T5 server range.

    CPU Utilization

    Error! Reference source not found.1 shows CPU utilization for the software components in the

    Oracle Optimized Solution for Oracle WebLogic Server. Results are shown for six configurations,

    differing in the number of transactions per second (TPS) for the Oracle WebLogic Server. As shown,

    and as a best practice, CPU reaches a maximum utilization rate of 80 percent on the Oracle WebLogic

    Servers. There is additional compute capacity available to handle peaks in utilization in all three

    configurations.

    TABLE 1. CPU UTILIZATION (%)

    CONFIGURATION ENTRY

    LEVEL SMALL MEDIUM 1 MEDIUM 2 LARGE

    EXTRA

    LARGE

    Oracle WebLogic

    Server 78 78 78 80 80 80

    Memory Utilization

    Error! Reference source not found. shows memory allocation requirements (in gigabytes) for the

    software components in this solution for Oracle WebLogic Server and Oracle Database 11g. Results

    0

    20000

    40000

    60000

    80000

    100000

    Entry Small Medium 1 Medium 2 Large Extra Large

  • Oracle Optimized Solution for Oracle WebLogic Server

    10

    are shown for six configurations, differing in the number of transactions per second (TPS) for the

    Oracle WebLogic Server. As shown, memory utilization scales as the number of transactions increases.

    TABLE 2. MEMORY UTILIZATION (DEDICATED GB)

    CONFIGURATION ENTRY LEVEL SMALL MEDIUM 1 MEDIUM 2 LARGE EXTRA LARGE

    Oracle WebLogic Server 90 GB 150 GB 200 GB 200 GB 250 GB 390 GB

    These memory utilization results are used to help determine the recommended memory sizing

    guidelines and the choice of SPARC T-Series servers.

    Sizing & Role Guidelines

    Based on the testing performed in this study, the sizing guidelines in Table 3 are recommended for the

    range of configurations from small to extra-large. These configurations are based on the expected

    number of transactions on the Oracle WebLogic Server and are sized accordingly to provide the best

    performance while keeping costs in mind. Additional compute and memory capacity is available to

    handle peaks in utilization in all configurations.

    These recommended sizing guidelines serve as starting points when planning an Oracle WebLogic

    Server deployment on SPARC T-Series servers. The architecture is flexible and highly scalable,

    providing an easy upgrade path if workload requirements increase.

    TABLE 3. SERVER SIZING

    ENTRY SMALL MEDIUM 1 MEDIUM 2 LARGE EXTRA LARGE

    Transactions per

    second

    5,000/sec 10,000/sec 21,000/sec 25,000/sec 50,000/sec 100,000/sec

    Server 2x SPARC

    T4-1

    2x SPARC T4-

    2

    2x SPARC

    T4-4

    2x SPARC

    T5-2

    2x SPARC

    T5-4

    2x SPARC T5-8

    CORES PER

    NODE

    8 16 32 32 64 128

    MEM PER NODE 128 GB 256 GB 512 512 1024 1024

    Security: SPARC T-Series Cryptography

    A truly unique feature of the SPARC T-Series servers is the on-CPU cryptography acceleration

    capabilities. Acting as a perfect complement to technology in Oracle Solaris 11, cryptographic

    workloads are greatly increased with little performance degradation for overall system performance As

    a rule of thumb, simply using traditional methods such as HTTPS (SSL) encryption at the Web tier to

  • Oracle Optimized Solution for Oracle WebLogic Server

    11

    secure server-to-browser (client) connections can place an additional 20 percent overhead on the CPU

    resources, essentially robbing an ordinary server of its performance value.

    In most circumstances, specialized cryptography cards or network appliances are used to offload the

    additional workload imposed by cryptography. However, both these approaches impose penalties of

    their own. A card generally adds complexity, cost, and a higher power profile to a computing

    environment while also putting the additional cryptography workload on the bus, imposing a

    system-wide performance penalty and potential bottleneck. Using a network appliance to intercept

    inbound SSL, strip out the encryption, and then pass the workload in the clear to the application

    introduces problems with increased resources (electricity, cooling, footprint) and can present security

    compliance issues. In both cases, these approaches to mitigating security overhead represent additional

    cost of acquisition and operation.

    With Oracles SPARC T5 servers (as was also the case in previous-generation SPARC T-Series servers),

    however, hardware cryptography acceleration is built into specialized areas of the CPU and is easily

    configuredwithout additional costsusing a number of methods.

    The most immediate and direct means of taking advantage of SPARC T-Series hardware acceleration

    features is to use the KSSL (Kernel SSL) approach. KSSL acts essentially as a two-way proxy for

    intercepting SSL workloads and executing the encryption and decryption on the CPU rather than

    placing that burden on the overall system.

    Actual configuration of Oracle WebLogic Server to make use of the SPARC T5 cryptographic

    acceleration features is beyond the scope of this document. However, a comprehensive guide with a

    full set of instructions on this topic can be found at

    http://blogs.oracle.com/BestPerf/entry/20100920_sparc_t3_weblogic_security.

    SPARC T-Series Cryptography Performance

    The next figure present the overall performance characteristics of using SPARC T-5 on-processor-

    based cryptographic acceleration, and they show the effect of cryptographic overheads on the

    application and near-elimination of cryptographic overhead when using the on-chip crypto acceleration

    features to improve SSL responsiveness.

  • Oracle Optimized Solution for Oracle WebLogic Server

    12

    Figure 8: KSSL performance.

    Oracle Application Testing Suite, which is an internally developed test and performance monitoring

    suite, was used as the load driver for driving the workload, simulating 1,000 concurrent users ramped

    up in increments of 10 users per minute until reaching 150 users. Each user queried the Web

    application as many times as possible per minute, clearing caches in between. Once 1,000 concurrent

    users were reached, the workload was sustained for 10 minutes. The load test run captured numbers

    for three key aspects of any Web transaction: throughput (or peak transfer), hits per second, and tests

    per minute. This load test was not intended to push the upper limits of the server but rather to

    demonstrate the overhead of cryptography at a reasonable load and the effects of using

    hardware-assisted cryptographic acceleration.

    The results showed only a minor difference due to SSL overhead between the unsecured application

    versus on-chip cryptographic accelerated solution, which yielded tangible, immediate, and cost-efficient

    results in the form of faster, secure transactions and better response timesall without adding any

    additional security equipment costs, changes in power usage profiles, or elaborate system

    configurations. Additionally, the results clarify the massive burden unaccelerated cryptographic

    workloads can have on a server.

    0

    5

    10

    15

    No SSL Hardware SSL

    CP

    U in

    %

    CPU Average

    CPU Max

    CPU Min

  • Oracle Optimized Solution for Oracle WebLogic Server

    13

    For More Information

    For more information on the Oracle Optimized Solution for Oracle WebLogic Server on SPARC T5

    servers, see the references listed in Error! Reference source not found..

    TABLE 1 REFERENCES FOR MORE INFORMATION

    Oracle WebLogic Server http://www.oracle.com/us/products/middleware/application-server/index.html

    Oracle's SPARC T5 server http://www.oracle.com/servers

    Oracle Solaris 11 http://www.oracle.com/us/products/servers-

    storage/solaris/solaris11/overview/index.htm

    Oracle Database 11g http://www.oracle.com/us/products/database/index.html

    SPECjEnterprise2010 Result http://www.spec.org/jEnterprise2010/results/res2011q3/jEnterprise2010-20110907-

    00027.html

    High Performance Security for Oracle

    WebLogic Applications Using Oracle

    SPARC Enterprise T-Series Servers

    http://www.oracle.com/technetwork/articles/systems-hardware-architecture/security-

    weblogic-t-series-168447.pdf

    Oracle Fusion Middleware security blog http://fusionsecurity.blogspot.com/

    1 SPECjEnterprise2010 models contemporary Java-based applications that run on large Java EE servers backed by

    network infrastructure and database servers. Oracle: Application tier2x SPARC T5-8 servers (8 chips, 128 cores),

    Database tier2x SPARC T5-8 servers (8 CPUs, 128 cores). 57,104.86 SPECjEnterprise2010 EjOPS,

    SPECjEnterprise2010 EjOPS performance per processor across the configuration. All results from www.spec.org as of

    March 21, 2013.

  • Oracle Optimized Solution for

    Oracle WebLogic Server

    March 2013, Revision 2.0

    Author: Albert Chad Prucha

    Oracle Corporation

    World Headquarters

    500 Oracle Parkway

    Redwood Shores, CA 94065

    U.S.A.

    Worldwide Inquiries:

    Phone: +1.650.506.7000

    Fax: +1.650.506.7200

    oracle.com

    Copyright 2013, Oracle and/or its affiliates. All rights reserved. This document is provided for information purposes only, and the

    contents hereof are subject to change without notice. This document is not warranted to be error-free, nor subject to any other

    warranties or conditions, whether expressed orally or implied in law, including implied warranties and conditions of merchantability or

    fitness for a particular purpose. We specifically disclaim any liability with respect to this document, and no contractual obligations are

    formed either directly or indirectly by this document. This document may not be reproduced or transmitted in any form or by any

    means, electronic or mechanical, for any purpose, without our prior written permission.

    Oracle and Java are registered trademarks of Oracle and/or its affiliates. Other names may be trademarks of their respective owners.

    Intel and Intel Xeon are trademarks or registered trademarks of Intel Corporation. All SPARC trademarks are used under license and

    are trademarks or registered trademarks of SPARC International, Inc. AMD, Opteron, the AMD logo, and the AMD Opteron logo are

    trademarks or registered trademarks of Advanced Micro Devices. UNIX is a registered trademark of The Open Group. 0113