Oracle Socket Adapter Tuning Oracle MQ Adapter Tuning

18-4 Oracle Fusion Middleware Performance and Tuning Guide

18.2.5.1 Message Batching

The EMS batching process clubs messages into one single message before it is sent to BAM EMS. This feature enables the sender to send all messages in one batch over JMS. The batching process can improve network performance by limiting the number of round trips from the sender to JMS server to BAM EMS. 19 User Messaging Service Performance Tuning 19-1 19 User Messaging Service Performance Tuning This chapter describes tips for tuning the User Messaging Service. It contains the following sections: ■ Section 19.1, About Oracle User Messaging Services ■ Section 19.2, Basic Tuning Considerations ■ Section 19.3, Database Tuning for Optimal Throughput

19.1 About Oracle User Messaging Services

Oracle User Messaging Service enables users to receive notifications sent from SOA applications that are developed and deployed to the Oracle WebLogic Server using Oracle JDeveloper. At the application level, there is notification activity for a specific delivery channel such as SMS or E-Mail. For example, when you build a SOA application that sends e-mail notification, you drag and drop an Email Activity component from the JDeveloper Component Palette to the appropriate location within a workflow. The application connects then sends notifications. For more information on Oracle User Messaging Service, see Oracle WebLogic Communication Services Administrators Guide, Oracle WebLogic Communication Services Developers Guide, and the Oracle Fusion Middleware Developers Guide for Oracle SOA Suite.

19.2 Basic Tuning Considerations

Depending on your User Messaging usage and performance issues, you may consider tuning the following: ■ SMPP Driver Performance Tuning ■ Email Driver Polling Frequency

19.2.1 SMPP Driver Performance Tuning

Short Messaging Peer-Peer Protocol SMPP messaging drivers can be configured using Enterprise Manager. One of the key parameters for optimizing SMPP performance is WindowSize. This is especially important when the SMPP driver is connected to a remote SMSC and there is high network latency between the two elements. Configuring the WindowSize parameter enables the SMPP driver to send several requests to the Short Messaging Service Center SMSC before waiting for an 19-2 Oracle Fusion Middleware Performance and Tuning Guide acknowledgment. Without windowing i.e., a WindowSize of 1, the driver must wait for a synchronous acknowledgment from the SMSC before sending the next message. With windowing, more messages can be sent per network round-trip, allowing a higher overall throughput. To take advantage of an increased WindowSize, the number of MDB threads for the driver must be correspondingly increased. The two values should be matched so that driver threads can process and send messages before waiting for the requests to be acknowledged. Increasing the two values may improve performance, but only up to the point at which network latency no longer dominates the sending rate. Also, the maximum allowed value for the WindowSize is normally defined as a service policy by the SMSC operator. For more information, see Configuring Oracle User Messaging Service in Oracle WebLogic Communication Services Administrators Guide.

19.2.2 Email Driver Polling Frequency

For Email drivers, the CheckMailFreq configuration parameter defines how frequently the driver checks for incoming emails. For example, a value of 30 means the driver checks the configured inbox every 30 seconds. This parameter can influence performance; checking more frequently enables the driver to keep up with a higher incoming email load, but can impact performance due to frequent IMAP or POP3 operations. Default value is 30 seconds.

19.3 Database Tuning for Optimal Throughput

User Messaging Service stores messaging state such as sent and received messages and delivery status information in the database. Therefore, database and data source tuning may have an effect on messaging throughput. The connection pool size for the data sources can be tuned for higher load levels, but the defaults are sufficient for most cases. For general database tuning considerations, see Section 2.6, Tune Database Parameters .