4 Oracle WebLogic Application Server and the JD Edwards EnterpriseOne HTML Server

This section provides some recommended parameters for the Oracle WebLogic Application Server and the JD Edwards EnterpriseOne HTML Server which supports it. These settings are representative of the changes to consider. The recommended values are based on evaluating the performance and scalability of loads up to 2,000 concurrent users.

This section discusses the recommendations for changing the WebLogic parameters for use with the in-memory applications of Project Portfolio Management and Sales Advisor:

4.1 Configuring Oracle WebLogic

To further configure the Oracle WebLogic and JD Edwards HTML Servers for better performance:

  1. From the WebLogic Admin Console, reset the JVM arguments used for this managed server instance with the following startup parameters:

    -Djava.net.preferIPv4Stack=true -Doracle.net.SDP=true -Xms4096m -Xmx4096m -XX:MaxPermSize=128m -DcloneId=C1_VC1
    

    Note:

    Refer to subsequent notes in this section for additional Server Startup parameter considerations.

  2. From the WebLogic Admin console, turn off HTTP logging:

    <managed_instance> > Logging > HTTP > uncheck HTTP access log file enabled
    
  3. From the WebLogic Admin console, enable the Exalogic Optimization feature:

    <domain_name> > General > enable checkbox for Enable Exalogic Optimizations
    
  4. From the WebLogic Admin Console and the EnterpriseOne Server Manager Console, increase the number of Managed Server Instances.

    Test results indicated a good starting point is to assume 200 users per JVM. Given that assumption, for a 2,000 user load, create ten (10) JVMs for each pathcode (for example, DV). To do so, add the first node, configure the EnterpriseOne tools for that clustered node and then add additional managed server instances after the first node has been configured.


    Note:

    A single pathcode cannot point to a mixture of cluster managed instances and stand-alone managed instances concurrently. For the greatest flexibility, and for scalability, configure all managed instances in a single cluster defined within the WebLogic Administrative Console.

  5. From the EnterpriseOne Server Manager Console, set the TimeWaitBeforeAutoResume setting to 0 to improve EnterpriseOne performance:

    Web Runtime Settings > Web Runtime > Auto Resume Interval (Value: 0)
    

    Note:

    After adding a large number of nodes to a cluster, it may be faster to restart the VM servers using the WebLogic Admin Console rather than through Server Manager.

  6. From the EnterpriseOne Server Manager Console, consider changing these other HTML Server (JAS) and JDBJ setting changes:

    • Max Users

      Assuming 2,000 users, the recommended configured value for Exalogic is 500 per managed instance. The default value is 100.

      Web Runtime > Web Runtime > Max Users
      
    • Maximum Connections

      Assuming 2,000 users, the recommended configured value for Exalogic is 500. The default value is 50.

      JDBJ Database Configuration > JDBJ Connection Pools > Maximum Connections
      
    • Pool Growth Size

      The configured value for Exalogic assuming 2,000 users is 10.

      JDBJ Database Configuration -> JDBJ Connection Pools
      
    • Initial Connections

      The configured value for Exalogic assuming 2,000 users is 10.

      JDBJ Database Configuration -> JDBJ Connection Pools
      
    • Minimum Connections

      The configured value for Exalogic assuming 2,000 users is 50.

      JDBJ Database Configuration -> JDBJ Connection Pools -> Minimum Connections
      
    • BSFN Timeout Threshold

      The configured value for Exalogic assuming 2,000 users is 270000 milliseconds. The default setting is 90000 (90 seconds).

      Network Settings -> JDENET Configuration -> Timeout Threshold
      
    • Async BSFN Thread Pool Size

      The default configured value for this setting is 50. Increasing this value to 500 avoids any bottlenecks in thread pooling for the increased load anticipated with the in-memory applications.

      Web Runtime -> Web Runtime -> Initial BSFN Thread Pool Size
      

      You should also check Asynchronous Business Function checkbox to take advantage of this above setting. This is the default behavior and setting, but should be validated to ensure the relevance of this tuning value.

4.2 WebLogic Server Startup Parameters for Managed Instances

This section describes the Oracle WebLogic Server startup parameters for managed instances. An example of the startup parameters is shown below:

XX:MaxPermSize=256m -d64 -Djavax.xml.rpc.ServiceFactory=oracle.j2ee.ws.client.ServiceFactoryImpl -Xms8g -Xmx8g -Xmn6g -XX:ParallelGCThreads=32 -XX:+AggressiveOpts -verbose:gc -XX:+PrintGCDetails -XX:+PrintGCTimeStamps -DcloneId=VC1 -Djava.awt.headless=true

The list below further describes the functionality of each startup parameter and their impact on JD Edwards EnterpriseOne in-memory applications.

  • MaxPermSize

    If you are received error messages indicating "out of perm space", it is recommended that you change this value from128 to 256.

  • -Xmn6g

    It is generally desirable for the YoungGeneration size larger than the OldGeneration to enable the JVM to recover more allocations during the minor GC. Consequently, with an 8GB heap size, it is preferable to have the YoungGeneration at 6 GB (-Xmn6g) which would result in a setting for the OldGeneration at 2 GB.

  • ParallelGCThreads=32

    You may have too many ParallelGC threads running as the default is to start the same number of ParallelGC threads as the number of CPUS. Too many threads can waste CPU cycles. A value not to exceed 32 is recommended.

  • AggressiveOpts

    You can accept the default value of -verbose:gc.