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 » General IBM MQ Support » Request/Response messaging on WinNT - COM

Post new topic  Reply to topic
 Request/Response messaging on WinNT - COM « View previous topic :: View next topic » 
Author Message
aq
PostPosted: Tue Apr 16, 2002 11:37 pm    Post subject: Reply with quote

Apprentice

Joined: 20 Dec 2001
Posts: 47

Hi, i would like to ask couple question from you MQS experts...

Our current MQS enviroment platform is Windows NT - MQS 5.2, where about 90 % of messaging are made in request/response style, speed and performance is on highest priority on this enviroment.

About all of our applications that use MQS messaging are Microsoft COM based in one way or another, so we have had to develope NT service as "COM interface" between COM components and MQSeries, the service has two purpose:

1. Acts as a "trigger monitor" for COM components on response end of MQS, where it monitor the local queue where the request messages arrive, when the message arrives it make's instance of COM object and passes the message data for component instance to process. After the component instance processing is complete the service will put the response message to reply-to-queue.

2. Acts as a "COM to MQSeries" interface, where when NT service is first time started, it will create certain number of dynamic reply-to-queue where the response messages will be putted. The NT service houses pool of worker thread's that are made for serving the incoming call's from COM components, there is one reply-to-queue per worked thread.


Simple program flow:

--------------------
1. COM object calls the NT service with message data


2. NT service assigns the workead thread (and reply-to-queue) for serving the COM object's call and sends the request message to another location.

3. NT service in another location reads the request message from the local queue, instantiates COM object and passes the request data to COM object instance, the return message from COM object instance is put to reply-to-queue.

4. Back in sender end the worker thread read the response message from the reply-to-queue and returns it to COM object that started the call, the worker thread is returned to thread pool.
--------------------

This is currenty the fastests way we have found to make the request/response style of messaging, times for round-trip are on fastest about 0.3 - 0.4 seconds, but the average is about 0.4 - 0.6 seconds depending on workload.

What you think about this ? Is there some things that we could enchance to gain better performance, or is there perhaps totally better way to do this ?



Second thing is that we are currently thinking to improve the services (better logging, error handling, reporting, etc.) and one consideration has been to write the services from the cratch again, but this time with AIM interface instead of MQI, but what you think that how much would be the performance losses of using AIM instead of MQI interface ?



Regards,
aq
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic  Reply to topic Page 1 of 1

MQSeries.net Forum Index » General IBM MQ Support » Request/Response messaging on WinNT - COM
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.