The TCP settings in jgroups-protocol.xml are designed for clustering across subnets, and Oracle seems to generally recommend using multicast otherwise. Unfortunately, the Enterprise Deployment Guide (10.1.3.3) does not describe how to configure TCP-based clustering for BPEL Process Manager.
When to use TCP for BPEL Process Manager Clustering
You should you use node-to-node (TCP) instead of multicast (UDP) when configuring a BPEL Process Manager cluster if a combination of the conditions below apply:
- You cannot configure multicast.
- Your BPEL Process Manager servers communicate across subnets.
- You have a very large number of nodes in your cluster.
- Performance of UDP is slow in your environment.
Configuring TCP-based clustering for BPEL Process Manager
Perform the following on all BPEL Process Manager servers in your cluster.
1. Comment out the UDP multicast configuration in jgroups-protocol.xml:
<-- <config> <UDP mcast_send_buf_size="32000" . . . </config> --> |
<config> <TCP start_port="7900" loopback="true" send_buf_size="32000" recv_buf_size="64000"/> <TCPPING timeout="3000" initial_hosts="server1[7900],server2[7900]" port_range="3" num_initial_members="3"/> . . . |
3. Restart OPMN.
If configured correctly, the log file SOA_GROUP~OC4J_SOA~SOA_GROUP~1.log should show it working with entries similar to:
INFO: server socket created on 192.168.28.210:7900 GMS: address is 192.168.28.210:7900 INFO: created socket to 192.168.28.207:7900 INFO: created socket to 192.168.28.210:7900 |
WARNING: discarded message from different group "server2:8880" (our group is "server1:7777"). Sender was192.168.28.207:7900 WARNING: discarded message from different group "server2:8880" (our group is "server1:7777"). Sender was192.168.28.207:7900 |
1 comment:
that was quite detailed.
Thanks for sharing
Post a Comment