|  | 
 
  
    | RSS Feed - WebSphere MQ Support | RSS Feed - Message Broker Support |  
 
  
	|    |  |  
  
	| Parallel processing + 2 MQ Input Nodes +additional Instance | « View previous topic :: View next topic » |  
  	| 
		
  | 
	  
		| Additional Instances with multiple Input Nodes is tricky :) |  
		| 
			
			  | Yes |  | 33% | [ 1 ] |  
			  | No |  | 33% | [ 1 ] |  
			  | I don't care :) |  | 33% | [ 1 ] |  |  
		| Total Votes : 3 |  |  
		  | Author | Message |  
		  | mehta10987 | 
			  
				|  Posted: Thu Aug 13, 2020 7:05 pm    Post subject: Parallel processing + 2 MQ Input Nodes +additional Instance |   |  |  
		  |  Novice
 
 
 Joined: 12 Oct 2019Posts: 13
 Location: USA
 
 | 
			  
				| Hello GrandMasters, looking for clarification with one of the scenario.
 
 I have a Message Flow with two MQ Input Nodes.
 MQ Input Node1: is listening to Queue1
 MQ Input Node2: is listening to Queue2
 
 If I create 10 additional Flow level Instances, How many messages can be picked at once by this flow?
 
 
  |  |  
		  | Back to top |  |  
		  |  |  
		  | abhi_thri | 
			  
				|  Posted: Sat Aug 15, 2020 8:08 am    Post subject: |   |  |  
		  |  Knight
 
 
 Joined: 17 Jul 2017Posts: 516
 Location: UK
 
 | 
			  
				| hi...it depends on which input thread gets initialized first and on the queue depths, it is covered at the below info center topic. 
 https://www.ibm.com/support/knowledgecenter/SSMKHH_10.0.0/com.ibm.scenarios.doc/Subflows/topics/scnsubflows_01_28_.htm
 
 Also see the ibm feedback my esteemed colleague had added there,
 
 When additional instances are set at the flow level, they are shared between the input nodes in the message flow. This does not mean that the extra threads will freely swap between input nodes, but rather that the additional threads will be spawned where needed. This can lead to "thread starvation", where one very active input "consumes" the available thread pool, which effectively "starves" the other input of available additional threads.
 
 When additional instances are set at the flow level and when you set the property - Start additional instances when flow starts, when the message flow is started, the first input node to get initialized would start all the additional instances - because Input node's thread pool is associated with the message flow pool (the default config of Input node). When the second or subsequent input nodes get initialized, they would find that the required no. of additional threads are already started at the flow pool level, they would not separately start any new additional threads. This is an expected behaviour.
 
 If you are looking to ensure thread availability for multiple inputs in a deterministic manner, we recommend either setting additional instances at the node level, or separating in the inputs into separate flows. That would avoid the thread starvation kind of situation if the instances were defined at the flow level where one of the Input nodes can take away a large no. of threads.
 |  |  
		  | Back to top |  |  
		  |  |  
		  | rekarm01 | 
			  
				|  Posted: Mon Aug 17, 2020 10:08 am    Post subject: Re: Parallel processing + 2 MQ Input Nodes +additional Insta |   |  |  
		  | Grand Master
 
 
 Joined: 25 Jun 2008Posts: 1415
 
 
 | 
			  
				| 
   
	| mehta10987 wrote: |  
	| If I create 10 additional Flow level Instances, How many messages can be picked at once by this flow? |  Twelve.  One for Node1, one for Node 2, and ten additional instances.
 
 No matter how the execution group allocates the additional instances among the nodes, there would never be more than twelve total instances.
 |  |  
		  | Back to top |  |  
		  |  |  
		  |  |  |  
  
	|    |  | Page 1 of 1 |  
 
 
  
  	| 
		
		  | 
 
 | You cannot post new topics in this forum You cannot reply to topics in this forum
 You cannot edit your posts in this forum
 You cannot delete your posts in this forum
 You cannot vote in polls in this forum
 
 |  |  |  |