|
RSS Feed - WebSphere MQ Support
|
RSS Feed - Message Broker Support
|
MQ Listener |
View previous topic :: View next topic |
Author |
Message
|
bruce2359 |
Posted: Thu Oct 14, 2010 12:22 pm Post subject: |
|
|
 Poobah
Joined: 05 Jan 2008 Posts: 9475 Location: US: west coast, almost. Otherwise, enroute.
|
Quote: |
...the way I read the documentation... |
What documentation? Please post the URL or document number. _________________ I like deadlines. I like to wave as they pass by.
ב''ה
Lex Orandi, Lex Credendi, Lex Vivendi. As we Worship, So we Believe, So we Live. |
|
Back to top |
|
 |
Gideon |
Posted: Thu Oct 14, 2010 12:23 pm Post subject: |
|
|
Chevalier
Joined: 18 Aug 2009 Posts: 403
|
I was referring to the folloing documentation from http://publib.boulder.ibm.com/infocenter/wmqv7/v7r0/index.jsp
Code: |
For applications to be able to exchange messages you must start a listener program for inbound connections (or, in the case of UNIX systems, create a listener attachment). On Windows and Unix systems, use the runmqlsr command to start the WebSphere® MQ listener process. By default, any inbound requests for channel attachment causes the listener process to start MCAs as threads of the amqrmppa process. |
I read the following from the site:
https://www.ibm.com/developerworks/mydeveloperworks/blogs/messaging/entry/an_introduction_to_wmq_queue?lang=en
Code: |
The common listenerprocessis “runmqlsr”. This listens for the incoming requests and handsover therequest to a process called “amqrmppa”, also called channelpooler. Thisis a threaded process and based on the number of requests, more numberof“amqrmppa” process will be spawned.
On theremote end, “amqrmppa” works on behalf of theapplication and returns the service. Here is the simplified flow: |
So the runmqlsr starts amqrmppa, which spawns off separate threads.
What I interpret that to mean is that those separate threads are free to run in separate cores, not just aligned with a single process on a single core on a multi-processor system.
Is this a correct assumption ?
Thanks |
|
Back to top |
|
 |
fjb_saper |
Posted: Thu Oct 14, 2010 12:28 pm Post subject: |
|
|
 Grand High Poobah
Joined: 18 Nov 2003 Posts: 20763 Location: LI,NY
|
you'd probably have a better chance asking that question in a PMR.  _________________ MQ & Broker admin |
|
Back to top |
|
 |
Vitor |
Posted: Thu Oct 14, 2010 12:28 pm Post subject: |
|
|
 Grand High Poobah
Joined: 11 Nov 2005 Posts: 26093 Location: Texas, USA
|
Gideon wrote: |
What I interpret that to mean is that those separate threads are free to run in separate cores, not just aligned with a single process on a single core on a multi-processor system.
Is this a correct assumption ?
|
I can see why you're making that assumption. I can also see that a multi threaded app could still (by accident or design) have processor affinity and all the threads could end up on a single core.
IMHO the only way to get a definitive answer (short of a passing IBMer) is to raise a PMR & find out how the threading was coded for the given platform you're running on. From this you will determine if the effect your seeing is accident or design, and if accident possibly get a fix.
At worst you can push for a definitive statement on multi-core multi-threading in the documentation. _________________ Honesty is the best policy.
Insanity is the best defence. |
|
Back to top |
|
 |
bruce2359 |
Posted: Thu Oct 14, 2010 3:31 pm Post subject: |
|
|
 Poobah
Joined: 05 Jan 2008 Posts: 9475 Location: US: west coast, almost. Otherwise, enroute.
|
Quote: |
By default, any inbound requests for channel attachment causes the listener process to start MCAs as threads of the amqrmppa process. |
I believe the confusion arises due to the letter 's', to make a singular a plural.
The above sentence should read:
By default, any inbound request (singular) for channel attachment causes the listener process to start a (single) MCA as a thread of the amqrmppa process.
Once a channel is started (attached), and remains running, there is no need to start an(other) MCA.
-------------------------------------------------------------------
To validate this, I created a test qmgr (on Windoze), created a 2nd svrconn channel (ANOTHER.DEF.SVRCONN), created a local queue, started a listener (runmqlsr).
I then opened a command prompt (1), and SET MQSERVER=SYSTEM.DEF.SVRCONN/TCP/(1414). In a 2nd command prompt (2), I SET MQSERVER=ANOTHER.DEF.SVRCONN/TCP/(1414).
I opened the Win Task Manager.
No instance of amqrmppa exists.
When I started amqsputc (client) in command prompt (1), one instance of amqrmppa appeared in task manager, along with the instance of amqsputc.
When I started amqsputc (client) in command prompt (2), the 2nd amqsputc appeared, but NO new instance of amqrmppa appeared.
I don't have a test UNIX image available, but I'd expect the same results. _________________ I like deadlines. I like to wave as they pass by.
ב''ה
Lex Orandi, Lex Credendi, Lex Vivendi. As we Worship, So we Believe, So we Live. |
|
Back to top |
|
 |
gbaddeley |
Posted: Thu Oct 14, 2010 5:06 pm Post subject: |
|
|
 Jedi Knight
Joined: 25 Mar 2003 Posts: 2538 Location: Melbourne, Australia
|
Gideon wrote: |
As I understand it, the listener hands the request to the amqrmppa, which then starts a thread to handle the communication, which is why some sites refer to the amqrmppa as the listener. |
Those sites are wrong. Do you have any references?
amqrmppa is a channel connection pooling process that runs MCAs in threads. It does not listen to ports. _________________ Glenn |
|
Back to top |
|
 |
|
|
|
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
|
|
|
|