From your article on the differences between IBM MQ, MSMQ and JMS can you give me more detail on the following statement you made? Why is a clean room JMS product a better performer than IBM MQ and MSMQ for publish/subscribe?
Internally, IBM MQ and MSMQ only implement the message queueing model, but not the publish/subscribe model. Hence, in IBM MQ, the JMS pub/sub model is realized atop of message queues, by creating one queue per subscriber, for example. This works but will not necessarily lead to good performance or scalability, as the middleware is not aware of pub/sub communication and thus does not provide any optimizations for that.
A clean-room JMS server typically provides a "native" implementation of the pub/sub domain, without simply layering it atop point-to-point queue. Some clean room JMS products even utilize IP multicast to broadcast JMS messages over local area networks. This further increases the scalability.