Planning execution groups

With few exceptions, each message flow can run in one or more execution groups of a message broker. Each execution group is a separate process that runs in its own address space. Each instance of a message flow is a thread that runs within such a process. FTM SWIFT message flows are delivered as BAR files.

Consider the following items when planning execution groups:
  • The procedures for migrating from earlier levels and for implementing PTFs replace the entire contents of all execution groups that contain FTM SWIFT message flows. Therefore, do not include other message flows in such execution groups.
  • Each execution group requires memory to control its own functioning. Therefore, distributing message flows to several execution groups requires more memory than deploying all message flows to one execution group.
  • Segregating message flows by business function can increase overall reliability. For example, if you arrange for the SWIFTNet FIN and MSIF message flows to run in different execution groups, and one execution group terminates due to errors, the other remains unaffected.
  • You might want to deploy certain message flows to several execution groups to increase total throughput.
  • Message flows of FTM SWIFT and message flows of other products of the FTM family must be deployed in separate execution groups.
  • The processing of the following message flows must observe a strict sequence:
    • DNF_L_ADM
    • DNF_L_IMP
    For that reason, only one instance of each of these message flows can run at a time, and neither of them must be deployed in more than one broker server or execution group.
  • Only one instance of the message flow DNQ_K_MON can run in one broker server at a time, but it can be deployed and run in several broker servers simultaneously.
  • The commit count of the MSIF transfer service (DNF_O_FTx) must be set to 1.
  • If MSIF is used to process FileAct requests it is recommended to customize 2 flow instances of an MSIF transfer service DNF_O_FTx. Set additionalinstances to 1 during customization. Figure 4 shows an example.
Because each execution group requires a minimum amount of memory, you will not want to use too many. The optimum number of execution groups depends on the capabilities of your system, and on the balance you choose between the higher maintainability and throughput provided by many execution groups, and the lower memory consumption that results from using fewer execution groups. Using several execution groups:
  • Lowers the maximum amount of memory required by each execution group
  • Increases the performance of each message flow
  • Makes it easier to manage the message flows, because related flows can be grouped together in the same execution group
  • Increases the reliability of message flows that are deployed in more than one execution group, because if one terminates, the other execution groups remain unaffected
  • Lets you use the workload manager to prioritize message flows
Table 1 shows an example that uses several execution groups that group FTM SWIFT message flows according to their business functions.
Table 1. Example using several execution groups based on business functions
Execution group Purpose BAR files Message Flows
DNI_ADMIN For the FTM SWIFT administration service
DNI_ACCADM.bar
DNI_AGATHER.bar
DNI_A_EVENT.bar
DNI_DEPLOY.bar
DNI_MONITOR.bar
DNI_N_EVENT.bar
DNI_RCP.bar
DNI_RSP.bar
DNI_R_AUDIT.bar
DNI_R_EVENT.bar
DNI_R_FMT.bar
DNI_R_MWH.bar
DNI_SAMPLE.bar
DNI_SYSADM.bar
DNI_SYSOP.bar
DNI_SECADM.bar
DNI_TIMER.bar
DNF_RM.bar

DNF_RMA.bar
DNP_F_FH.bar
DNP_O_EVT.bar
DNP_CMDDSP.bar
DNI_ACCADM
DNI_AGATHER
DNI_A_EVENT
DNI_DEPLOY
DNI_MONITOR
DNI_N_EVENT
DNI_RCP
DNI_RSP
DNI_R_AUDIT
DNI_R_EVENT
DNI_R_FMT
DNI_R_MWH
DNI_SAMPLE
DNI_SYSADM
DNI_SYSOP
DNI_SECADM
DNI_TIMER
DNF_L_ADM
DNF_L_IMP
DNF_L_TR
DNP_F_FH
DNP_O_EVT
DNP_CMDDSP
DNF_SAG For the FTM SWIFT SAG configuration and operation services
DNF_BACKOUT.bar
DNF_R_EXP.bar
DNF_SAGCFG.bar

DNF_SAGOP.bar
DNF_BACKOUT
DNF_R_EXP
DNF_SAGCFG
DNF_SAGCFGR
DNF_SAGOP
DNF_SAGOPRE
DNF_FIN For the FTM SWIFT SIPN FIN and FMT FIN services
DNF_ILC_CMD.bar


DNF_ILC_FIN.bar
DNF_ILS_ACK.bar
DNF_ILS_FIN.bar
DNF_PF_CMD.bar
DNF_PF_IR.bar
DNF_PF_IS.bar
DNF_V_ADM.bar


DNF_V_API.bar
DNF_ILC_CMD
DNF_FSM_QRY
DNF_FSM_STA
DNF_ILC_FIN
DNF_ILS_ACK
DNF_ILS_FIN
DNF_PF_CMD
DNF_PF_IR
DNF_PF_IS
DNF_V_ADM
DNF_V_REQ
DNF_V_RSP
DNF_V_API
DNQ_ER For FTM SWIFT Message Management services other than the sample services
DNQ_K_TPL.bar
DNQ_K_MON.bar
DNQ_K_TPL
DNQ_K_MON
DNQ_ER_SAMPLE For the FTM SWIFT Message Management sample services that are used to illustrate message routing for the MER Facility
DNQ_K_FIN1.bar







DNQ_K_FIN2.bar
DNQ_K_MX1.bar


DNQ_K_UAR.bar
DNQ_K_FIN1_1
DNQ_K_FIN1_2
DNQ_K_FIN1_3
DNQ_K_FIN1_4
DNQ_K_FIN1_5
DNQ_K_FIN1_IN
DNQ_K_FIN1_OUT
DNQ_K_FIN1_RCV
DNQ_K_FIN2
DNQ_K_MX1
DNQ_K_MX1_IN
DNQ_K_MX1_OUT
DNQ_K_UA
DNQ_Routing_SAMPLE For the FTM SWIFT Message Management sample services that are used to illustrate general message routing capability
DNQ_O_SFI.bar
DNQ_O_SFO.bar
DNQ_O_SMX.bar
DNQ_O_SFI
DNQ_O_SFO
DNQ_O_SMX
DNQ_PRINT For the FTM SWIFT Message Management services used for message printing
DNQ_P_CMD.bar
DNQ_P_DSP.bar
DNQ_P_PRT.bar
DNQ_P_CMD
DNQ_P_DSP
DNQ_P_PRT
DNF_EFAS For the FTM SWIFT MSIF services
DNF_O_CMD.bar
DNF_O_FT.bar
DNF_O_FT1.bar
DNF_O_FT2.bar
DNF_O_FT3.bar
DNF_O_CMD
DNF_O_FT
DNF_O_FT1
DNF_O_FT2
DNF_O_FT3