Event Inspector HTTP Publish-Subscribe Channel and Server

27-2 Oracle Complex Event Processing Developers Guide

27.2 High Availability Performance Tuning

When creating high-availability applications for deployment to multi-server domains, consider the following performance tuning options: ■ Section 27.2.1, Host Configuration ■ Section 27.2.2, High Availability Input Adapter and Quality of Service ■ Section 27.2.3, High Availability Input Adapter Configuration ■ Section 27.2.4, Broadcast Output Adapter Configuration ■ Section 27.2.5, Oracle Coherence Performance Tuning Options For more information, see Section 20.3, Designing an Oracle CEP Application for High Availability

27.2.1 Host Configuration

If you only want availability and are not concerned with recovery time, then it is possible to use smaller, less equipped hosts as secondaries. However, to maximize high availability performance, ensure that all hosts in the multi-server domain are identical: same number and type of processor, same quantity of memory, same number and size of disks.

27.2.2 High Availability Input Adapter and Quality of Service

The Oracle CEP high availability input adapter is applicable to all high availability quality of service options. However, because the high availability input adapter increases performance overhead, it is not appropriate for some high availability quality of service options such as Section 20.2.1, Simple Failover and Section 20.2.2, Simple Failover with Buffering . If you are using application time from the event then you do not need to use the input adapter. Application time from the event is always preferable from a performance standpoint.

27.2.3 High Availability Input Adapter Configuration

Consider increasing the batch-size to reduce the amount of time the primary server spends broadcasting event messages and to reduce the amount of time the secondary servers spend processing these messages. Increasing the batch-size may increase the likelihood of missed and duplicate events if the primary fails before broadcasting an event message with a large number of events. For more information, see Table 21–3, Child Elements of ha-inbound-adapter for the High Availability Input Adapter .

27.2.4 Broadcast Output Adapter Configuration

Consider decreasing the trimming-interval to reduce the amount of time the primary server spends broadcasting trimming messages and to reduce the amount of time the secondary servers spend processing these messages. Decreasing the trimming-interval may increase recovery time as the new primary server’s in-memory queue will be more out of date relative to the old primary. Performance Tuning 27-3 For more information, see Table 21–9, Child Elements of ha-broadcast-adapter for the Broadcast Output Adapter .

27.2.5 Oracle Coherence Performance Tuning Options

When configuring Oracle Coherence in a high-availability architecture, consider the following performance tuning options: ■ Section 27.2.5.1, Oracle Coherence Heartbeat Frequency ■ Section 27.2.5.2, Oracle Coherence Serialization For more information, see Performance Tuning in the Oracle Coherence Developers Guide at http:download.oracle.comdocscdE15357_ 01coh.360e15723tune_perftune.htm .

27.2.5.1 Oracle Coherence Heartbeat Frequency

To reduce failover time, increase Coherence heartbeat timeout machine frequency and reduce the number of heartbeats before failure.

27.2.5.2 Oracle Coherence Serialization

To improve messaging performance, implement the Oracle Coherence Portable Object Format POF for serialization. POF is a language agnostic binary format that was designed to be very efficient in both space and time. Using POF instead of Java serialization can greatly improve performance. For more information, see http:coherence.oracle.comdisplayCOH35UGThe+Portable+Object+ Format .