Skip to Main Content
Integration


This is an IBM Automation portal for Integration products. To view all of your ideas submitted to IBM, create and manage groups of Ideas, or create an idea explicitly set to be either visible by all (public) or visible only to you and IBM (private), use the IBM Unified Ideas Portal (https://ideas.ibm.com).


Shape the future of IBM!

We invite you to shape the future of IBM, including product roadmaps, by submitting ideas that matter to you the most. Here's how it works:

Search existing ideas

Start by searching and reviewing ideas and requests to enhance a product or service. Take a look at ideas others have posted, and add a comment, vote, or subscribe to updates on them if they matter to you. If you can't find what you are looking for,

Post your ideas
  1. Post an idea.

  2. Get feedback from the IBM team and other customers to refine your idea.

  3. Follow the idea through the IBM Ideas process.


Specific links you will want to bookmark for future use

Welcome to the IBM Ideas Portal (https://www.ibm.com/ideas) - Use this site to find out additional information and details about the IBM Ideas process and statuses.

IBM Unified Ideas Portal (https://ideas.ibm.com) - Use this site to view all of your ideas, create new ideas for any IBM product, or search for ideas across all of IBM.

ideasibm@us.ibm.com - Use this email to suggest enhancements to the Ideas process or request help from IBM for submitting your Ideas.


Status Future consideration
Created by Guest
Created on Oct 23, 2014

Publisher notification mechanism to alert publisher of first incoming subscription to one of its topics

For any publisher wherein the act of determining a publishable event correlating to a topic requires non-trivial resource consumption, it would be helpful (and potentially far more efficient) if there were a mechanism whereby the queue manager to which the publisher is connected notified the publisher the first time a subscription for that topic materialized within the queue manager's purview (either directly by a subscriber or via subscription proxy). This, coupled with the existing feature of WMQ pub/sub whereby a publisher can be notified in conjunction with MQPUT that there are no longer any current subscribers, would enable such a publisher to be very efficient in terms of its collateral resource consumption, only employing it when there's an actual need for it to be employed.

Additionally, such a notification mechanism (paired with the MQPUT no-more-active-subscribers feature) would enable an alternative approach to certain retained-publication use-cases if the publisher, upon notification of initial active subscriber interest, can immediately fetch and publish current-state and then continue to publish any changes as long as (and only as long as) there is sustained interest among the subscribers in the pub/sub network. (Note that in cases where there are many topics whose publications would normally be retained, but a large number of these topics are of infrequent or sporadic interest to subscribers, this would also eliminate storage overhead for the queue manager). This of course puts added responsibility on the publisher to diligently track interest in the information it purveys, but in many cases, the gains in efficiency may make the added responsibility very worthwhile.

Idea priority High
RFE ID 61036
RFE URL
RFE Product IBM MQ
  • Guest
    Reply
    |
    Oct 15, 2015

    Due to processing by IBM, this request was reassigned to have the following updated attributes:
    Brand - WebSphere
    Product family - Integration
    Product - IBM MQ

    For recording keeping, the previous attributes were:
    Brand - WebSphere
    Product family - Connectivity and Integration
    Product - IBM MQ

  • Guest
    Reply
    |
    Nov 6, 2014

    Thank you for reviewing and responding to my RFE! In order to be sure I understand you correctly, I'd like some clarification on the two "pieces" you described:

    Actually, let me start with a question about a comment you made in describing the second future feature (dynamic notification): Is it in fact true with current releases of WMQ that, for example, you could replace the SYSTEM.ADMIN.CONFIG.EVENT qlocal with a qalias of the same name and have the qalias resolve to a topic object? Since that is the impression I got from reading your description, I'll use that as an assumption in the following (please correct me if I'm mistaken):

    The first future feature described was "subscription events". Is it safe to assume that the idea here is (initially, at least) that this mechanism would involve posting a PCF-formatted message to a system object (SYSTEM.ADMIN.SUBSCRIPTION.EVENT or some similar name) each time the queue manager becomes aware of a new subscription? If so, this could indeed be used to address the challenge we face (as described in the RFE) albeit a little inelegantly: the inelegance (as I see it) stems from the fact that any given publisher is only interested in the topics for which it is responsible, and "listening" to a subscription-events queue requires that the publisher process all subscription events whether relevant or not. Additionally, this would require tricking the queue manager into posting the subscription-event messages to a topic because otherwise the wrong publisher might consume any given subscription event message.

    If this were the way subscription events were exposed, I would probably want to have a stand-alone subscription event consumer (or daemon, if you prefer) that decoded each PCF event message and posted a publication to a subscription-event topic whose fully qualified topic string would be the topic string indicated in the subscription event message, appended to a standard, queue-manager-wide topic string (probably associated with a topic object). To use an example associated with the example I used in the RFE, suppose we called the queue-manager-wide topic string we intend to use "NEW/SUBSCRIPTION". The first instance of a subscription to "Stocks/NYSE/IBM" would cause an event message to be posted to the subscription events system object; the stand-alone program would consume this message, extract the topic string ("Stocks/NYSE/IBM") and post a publication to the topic "NEW/SUBSCRIPTION/Stocks/NYSE/IBM". Our stock price publisher, upon start up, would have an active subscription to the wildcarded topic "NEW/SUBSCRIPTION/Stocks/#" and thus would be alerted to this subscription (via the publication by our stand-alone program based on the subscription event) as well as all relevant subscriptions, but never any irrelevant ones. An additional benefit of this approach is that PCF parsing logic would not have to be propagated to each publisher. On a side note, any program interested in all subscription events using this setup would simply subscribe to "NEW/SUBSCRIPTION/#".

    I realize that for backward-compatibility reasons (if nothing else), the currently exposed classes of events (config, command, etc.) need to continue to be exposed via posting to a queue. However, I would think the notion of events fits better into a publish/subscribe paradigm (depending on the nature of the event, it is easy to imagine that more than one entity might have a practical, useful interest in it). Since you have not yet offered "subscription events" to the public, would you consider using topics (rather than a queue) as the default exposition mechanism? Even if you decided to publish all subscription events to a single topic ("SYSTEM/ADMIN/SUBSCRIPTION/EVENTS" or something similar, as opposed to constructing the topic for a subscription event from a common root and the topic string in the actual subscription itself), it would still enable a more dynamic model without customers having to play unusual games with system object names. By the way, if you were to consider using topics rather than queues for the currently available classes of events, couldn't you preserve current behavior by having a administered subscription to the event topic whose queue is the queue you currently use for posting those events?

    My apologies if this writeup seems a bit long-winded. Any feedback will be most welcome! Thanks again!

  • Guest
    Reply
    |
    Nov 3, 2014

    Thank you for describing the problem you want to solve in this RFE. There are two possible future enhancements that when combined would solve your issue.

    The first is subscription events - that is notification that a subscription has been created (similar to config events when a queue is created). This is something that we would like to provide in a future version of MQ.

    The second is to make obtaining event notification a dynamic thing. Today to obtain event information you must enable events and read the notifications from a fixed queue name. Now today it is possible to make your event queues into a Qalias pointing at a topic, but that is still not very dynamic. Making this more dynamic is something that we would like to provide in a future version of MQ.

    Putting these two pieces together would provide a solution to your problem, so making it something that we would like to provide in a future version of MQ by means of the above two pieces.

  • Guest
    Reply
    |
    Oct 28, 2014

    On an added note, for publish use-cases such as described here (publishers responsible for many closely related topics), this could also be helpful in managing the MQOPENs, since each topic would only need to be OPENed when there is active interest in it.