0

I've narrowed down the area of the problem I'm facing and it turned out that MessageProducer.send() is too slow when it is created for a particular topic "replyfeserver":

auto producer = context.CreateProducerFromTopic("replyfeserver");

producer->send(textMessage); //it is slow

Here the call to send() blocks for up to 55-65 seconds occasionally — almost every after 4-5 calls, and up to 5-15 seconds in general.

However, if I use some other topic, say "feserver.action.status".

auto producer = context.CreateProducerFromTopic("feserver.action.status");

producer->send(textMessage); //it is fast!

Now the call to send() returns immediately, within a fraction of second. I've tried send() with several other topics and all of them work fast enough.

What could be the possible issues with this particular topic "replyfeserver"? What are the things I should look at in order to diagnose the issue with it? I was using this topic for last 2 months.

I'm using XMS C++ API and please assume that context object is an abstraction which creates session, destination, consumer, producer and so on.

I'd also like to know if there is any difference between these two approaches:

xms::Destination dest("topic://replyfeserver");

vs

xms::Destination dest = session.createTopic("replyfeserver");

I tried with both, it doesn't make any difference — at least I didn't notice it.

Nawaz
  • 353,942
  • 115
  • 666
  • 851
  • I agree with Rogers comment – Shashi Feb 05 '16 at 22:51
  • Best way farward is to open a PMR. – Shashi Feb 05 '16 at 22:52
  • @Shashi: I didn't understand that. What is PMR? How to open it? – Nawaz Feb 06 '16 at 04:27
  • I meant raise support ticket with IBM to analyse delay – Shashi Feb 06 '16 at 12:10
  • @Shashi: Where should I do that? Is it something online? – Nawaz Feb 06 '16 at 12:13
  • Is there a message size difference? Are you sending big messages to "replyforserver" topic and smaller messages to other topics? – Shashi Feb 06 '16 at 12:14
  • @Shashi: No. The messages are almost same size, in the range `[n-2, n+2]` for some definition of `n`. – Nawaz Feb 06 '16 at 12:15
  • Please go through this link: http://www-01.ibm.com/support/docview.wss?uid=swg21507639 – Shashi Feb 06 '16 at 12:20
  • If you were using this topic for a while before it got slow, have you gradually accumulated lots of subscribers on this topic? Issue DISPLAY TPSTATUS(’replyfeserver') TYPE(SUB) to see how many subscribers you have. Having 10000s of subscribers might slow it down a bit, especially if their subscriber queues are all full or something. – Morag Hughson Feb 07 '16 at 09:34
  • @MoragHughson: That is really a good information. I'll definitely check it. – Nawaz Feb 07 '16 at 09:42

1 Answers1

0

There shouldn't be any difference. Personally, I like to have my topics in a hierarchy. i.e. A.B.C

I would run an MQ trace then open a PMR with IBM and give them the trace and say please explain the delay.

Roger
  • 7,062
  • 13
  • 20