ASG
IBM
Zystems
Cressida
Icon
Netflexity
 
  MQSeries.net
Search  Search       Tech Exchange      Education      Certifications      Library      Info Center      SupportPacs      LinkedIn  Search  Search                                                                   FAQ  FAQ   Usergroups  Usergroups
 
Register  ::  Log in Log in to check your private messages
 
RSS Feed - WebSphere MQ Support RSS Feed - Message Broker Support

MQSeries.net Forum Index » IBM MQ API Support » thread number versus socket number

Post new topic  Reply to topic
 thread number versus socket number « View previous topic :: View next topic » 
Author Message
sebastia
PostPosted: Thu Oct 18, 2012 11:20 pm    Post subject: thread number versus socket number Reply with quote

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
View user's profile Send private message Visit poster's website
mqjeff
PostPosted: Fri Oct 19, 2012 1:41 am    Post subject: Reply with quote

Grand Master

Joined: 25 Jun 2008
Posts: 17447

Nope, that's what SHARCONV does.
Back to top
View user's profile Send private message
sebastia
PostPosted: Fri Oct 19, 2012 3:43 am    Post subject: Reply with quote

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
View user's profile Send private message Visit poster's website
sebastia
PostPosted: Fri Oct 19, 2012 3:46 am    Post subject: Reply with quote

Grand Master

Joined: 07 Oct 2004
Posts: 1003

I have found a "complete" qm.ini here :

>>> http://publib.boulder.ibm.com/infocenter/wmqv6/v6r0/index.jsp?topic=%2Fcom.ibm.mq.amqzag.doc%2Ffa12510_.htm

Thanks anyway.
Back to top
View user's profile Send private message Visit poster's website
mqjeff
PostPosted: Fri Oct 19, 2012 4:00 am    Post subject: Reply with quote

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
View user's profile Send private message
sebastia
PostPosted: Fri Oct 19, 2012 4:31 am    Post subject: Reply with quote

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
View user's profile Send private message Visit poster's website
Display posts from previous:   
Post new topic  Reply to topic Page 1 of 1

MQSeries.net Forum Index » IBM MQ API Support » thread number versus socket number
Jump to:  



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
Protected by Anti-Spam ACP
 
 


Theme by Dustin Baccetti
Powered by phpBB © 2001, 2002 phpBB Group

Copyright © MQSeries.net. All rights reserved.