|
RSS Feed - WebSphere MQ Support
|
RSS Feed - Message Broker Support
|
 |
|
thread number versus socket number |
« View previous topic :: View next topic » |
Author |
Message
|
sebastia |
Posted: Thu Oct 18, 2012 11:20 pm Post subject: thread number versus socket number |
|
|
 Grand Master
Joined: 07 Oct 2004 Posts: 1003
|
Good morning.
I have a multi-thread (delphi) program, where each thread does
mq_ConnX() + mq_Open() + mq_Inquire()
and stays inquiring queue depth every 3 seconds, forever (or I hit a button)
I do start 10 or 12 threads but to my surprise, only 2 sockets connections are established to the remote queue manager.
I see 2 connections on the "origin" computer, using TCPview
and I see only 2 connections on the "destination" computer, using
Code: |
echo "DISPLAY CHSTATUS($SVRC)" | runmqsc $QMGR | grep -c "CHLTYPE(SVRCONN)"
|
Now I am using mq v 7.5, but I am very very sure that on mq version 5 and 6 ... there were as many socket connections as there were threads.
Can someone confirm this ?
So, the new parameter in SVRCONN channel in mq v 7.5 must be ...
Code: |
SHARECNV(integer) Specifies the maximum number of conversations that can be sharing each TCP/IP channel instance.
|
Am I wrong ?
Sebastian. |
|
Back to top |
|
 |
mqjeff |
Posted: Fri Oct 19, 2012 1:41 am Post subject: |
|
|
Grand Master
Joined: 25 Jun 2008 Posts: 17447
|
Nope, that's what SHARCONV does. |
|
Back to top |
|
 |
sebastia |
Posted: Fri Oct 19, 2012 3:43 am Post subject: |
|
|
 Grand Master
Joined: 07 Oct 2004 Posts: 1003
|
OK - I have set it to "0", so now 1 thread is 1 socket
( what is the difference between "0" and "1" ? )
I see "0" is "version 6" style ... and "1" is "version 7" style ...
Now I have hot another limit : MaxChannels
I want to change qm.ini, but have a question :
On what "Section" must "MaxChannels=1000" be placed ?
I have a pretty empty qm.ini :
Code: |
#*******************************************************************#
#* Module Name: qm.ini *#
#* Type : WebSphere MQ queue manager configuration file *#
# Function : Define the configuration of a single queue manager *#
#* *#
#*******************************************************************#
#* Notes : *#
#* 1) This file defines the configuration of the queue manager *#
#* *#
#*******************************************************************#
ExitPath:
ExitsDefaultPath=/var/mqm/exits/
ExitsDefaultPath64=/var/mqm/exits64/
#* *#
#* *#
Log:
LogPrimaryFiles=3
LogSecondaryFiles=2
LogFilePages=4096
LogType=CIRCULAR
LogBufferPages=0
LogPath=/var/mqm/log/PEREQM/
LogWriteIntegrity=TripleWrite
Service:
Name=AuthorizationService
EntryPoints=13
ServiceComponent:
Service=AuthorizationService
Name=MQSeries.UNIX.auth.service
Module=/opt/mqm/lib/amqzfu
ComponentDataSize=0
|
|
|
Back to top |
|
 |
sebastia |
Posted: Fri Oct 19, 2012 3:46 am Post subject: |
|
|
 Grand Master
Joined: 07 Oct 2004 Posts: 1003
|
|
Back to top |
|
 |
mqjeff |
Posted: Fri Oct 19, 2012 4:00 am Post subject: |
|
|
Grand Master
Joined: 25 Jun 2008 Posts: 17447
|
You do understand that setting SHARECNV to 0 causes a decrease in performance, potentially, right? |
|
Back to top |
|
 |
sebastia |
Posted: Fri Oct 19, 2012 4:31 am Post subject: |
|
|
 Grand Master
Joined: 07 Oct 2004 Posts: 1003
|
... because a new socket is created for every new thread ?
Then, yes, I see that. If this is a "long" operation", even it is used only once per connection, and no data has beentransfered yet ...
If you mean "1" is much better than "0", then NO, I dont see it.
If local system has enough resources to keep with (many) socket creation requests, I think the performance shall be better (when transfering data)
if we use "0" or "1" instead of "10" ...
Sebastian. |
|
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
|
|
|
|