Why Concurrent Processing? what is the Business Need for Concurrent Processing
We all use Concurrent Manager in Ebuiness Suite . I am reiterating the uses of it here
1) It Facilitate User Interaction
2) Long running jobs are performed in background to avoid interference with interactive operations
3) Improve efficiency of Applications
4) All background processing is controlled, scheduled, executed by Concurrent Processing
5) Resource-intensive background jobs run 24×7
6) Concurrent Processing works when your users don’t.We can schedule night jobs
7) it has High Availability and Fail over features.Multiple Concurrent Processing Servers provide failover and directed load
We have already explained the working of various concurrent manager in the post
Oracle concurrent Manager
What is PCP?
Parallel Concurrent Processing (PCP) allows you to distribute concurrent managers across multiple servers in order to distribute the processing load as well as to increase Concurrent Manager (CM) availability. When configuring the system, you can determine where to place each of the concurrent managers.
How Automatic Parallel Concurrent Processing or PCP works
1)It is by default on in R12 and R11i (latest patch set)
2) Generic Service Management (GSM) will automatically enforce Parallel Concurrent Processing (PCP) for all GSM Service Instances that have assigned Primary nodes
3) No additional configuration is needed to activate PCP.
4) Service Instances with no Primary node assignment will default to the ICM node
5) If ICM node is not a CP Server then the default node will be an active CP Server
6)Service Instances with an assigned primary node will only be started on that node
7) Service Instances with an assigned secondary node will start on the secondary node when their primary node is unable to be pinged or the node is not online
How Parallel Concurrent Processing Node Assignments is done
1) Each service or manager may have a primary and a secondary node.
2) Services with no primary node assignment will be assigned a default target node. In general this will be the node where the ICM is currently running.
3) When the primary node fails, the ICM will restart the service on the secondary node.
4) If the ICM’s node fails, an Internal Monitor(FNDIMON) can spawn a new ICM on another node.
5) Services move back to their primary nodes when those nodes come back up
How PCP and Service Managers(FNDSM) are related
1) The Service Manager is spawned from the APPS TNS Listener
2) The APPS TNS Listener (APPS_TEST) must be started on every middle-tier node in the system, and started by the user that starts ICM .The script is
For R12 $ADMIN_SCRIPTS_HOME
3) ICM will not attempt to start a remote Service Manager if it is unable to TNS ping the APPS TNS Listener and will give the TNS errors in ICM logfiles
4) If the ICM is able to start a Service Manager but unable to start processes because the Instance is down, failover will occur
5) The Service Manager environment is set by gsmstart.sh and APPSORA.env as defined in listener.ora
How PCP and RAC(Real application cluster) works together
There are two configuration
Individual CM nodes connect to single RAC node
1) The processes on a single node connect to a single RAC instance or service
2) The CP_TWO_TASK variable set in the context file indicates which instance will be used.
3) The ICM will treat instance failures the same as node failures . The profile option Concurrent:PCP Instance Check should be on
5) PCP Instance Failover requires that the TWO_TASK match the Instance in V$THREAD
6) In case of CM node down situation, the manager will fail over to secondary node
When CM nodes can connect to any node in RAC
1) The processes on a CM node connect to any instance in RAC
2) The CP_TWO_TASK variable should be set to TEST_BALANCE in the context file
3) The profile option Concurrent:PCP Instance Check should be off
4) The ICM will not failover on instance failure. It will just reconnect to surviving RAC instance
How PCP works internally
1) ICM contacts TNS Listener . TNS listener must be started on all the CM nodes
2) TNS Listener spawns Service Manager( FNDSM).Each CM node will have Service Manager( FNDSM) started
3) ICM communicates with Service Manager(FNDSM)
4) Service Manager spawns various Manager and Service processes
5) If ICM crashes due to node failures
6) Internal Monitor will spawn ICM locally when it detects ICM is down
Other Related articles on Concurrent ManagersPriority for concurrent program