【IT专家网独家】WebSphere MQ包含了大量编程接口-MQI。MQI通常适用于所有支持平台,它具有一组可以访问WebSphere MQ高级功能的简单调用。为了方便MQI开发人员的使用,WebSphere MQ V7.0一步增强了MQI,添加了一些新的调用和行为。 WebSphere MQ V7.0在MQI中引入了消息属性和消息句柄:
MQI用户可以用用户定义的数据来定制消息头。
新的MQI调用支持属性的设置(MQSETMP)和属性的查询(MQINQMP),应用程序不需要解析消息头就可以找到消息元数据。
开发人员可以使用消息句柄来指定消息之间的显式关系,譬如何时发送消息以响应某些消息。
WebSphere MQ V7.0在MQI中引入了回调函数 - 新的调用 MQCB。这使得JMS和MQI客户机可以向队列管理器进行注册,以便在消息或发布到达并要使用JMS或MQI时,可以自动通知他们。从而可以异步方式处理消息。在这之前,WebSphere MQ客户机使用MQGET对消息进行轮询。
现在MQI、JMS 和 XMS客户机都会得益于这个回调:
不再需要客户机应用程序持续不断地对队列管理器进行轮询
释放了部分网络带宽
缩短了从消息到达至响应之间的延迟时间
减少了对服务器和客户机的CPU使用
WebSphere MQ V7.0引入了对MQI的选择器支持:
应用程序可以根据消息属性或消息头从队列中选择消息。
可以用标准查询语言(SQL92)构造的查询,通过匹配消息属性中的条件,来检索经过过滤的消息。
可以将选择器与MQOPEN和MQSUB调用结合使用,检索与所需条件相符的消息。
可以在服务器上运行查询,以便对客户机性能进行优化。
利用选择器,使客户机应用程序不再需要浏览所提供的消息以及比较选择条件并忽略不符的消息。现在只有符合选择条件的消息才会传递给目标客户机。由于不需要向客户机发送无用的且会被客户机丢弃的消息,因此可以提高性能并降低网络带宽的使用。WebSphere Message Broker 可以根据内容正文而不只是头部和属性来过滤消息。
WebSphere MQ V7.0增强了对开发人员使用MQI来发布和预订消息传递的支持:
MQSUB 使应用程序能够注册预订。
MQSUBRQ使新订户可以接收关于某个主题最近保留的发布(该发布已经发送出去)。
已有的MQI调用具有一些新的用于发布和预订消息传递的选项。可以用MQOPEN访问主题,用MQCLOSE终止持久预订,用MQPUT和MQGET发布和接受预订。
IT专家网原创文章,未经许可,严禁转载!

