[发明专利]用于改进的表达式处理的方法和装置有效
申请号: | 200810005453.8 | 申请日: | 2008-02-04 |
公开(公告)号: | CN101246486A | 公开(公告)日: | 2008-08-20 |
发明(设计)人: | 斯蒂芬·J·托德 | 申请(专利权)人: | 国际商业机器公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30;H04L29/06 |
代理公司: | 北京市柳沈律师事务所 | 代理人: | 黄小临 |
地址: | 美国纽*** | 国省代码: | 美国;US |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 用于 改进 表达式 处理 方法 装置 | ||
技术领域
本发明涉及用于改进的表达式(expression)处理的方法、装置和计算机程序,用于诸如有效处理通讯(messaging)网络中的消息选择过滤器。
背景技术
通常使用面向消息中间件(MOM)用于在可能在分布式、不同种类的网络中远程数据处理系统上运行的应用程序之间传递数据。该中间件可以遮蔽(shield)应用程序以避免大量的路由复杂性和大量的为了成功传递所需的格式转换,以及实现恢复特征和其他可靠性特征。
一个建立得很好的通讯模型是异步点对点通讯,在该异步点对点通讯中,最初由发送器应用将消息放置到由消息处理程序管理的队列上,该消息处理程序对于发送器而言是本地的。然后,由交互操作的信息处理程序使用消息头中的信息来跨越网络传递该消息,并将该消息放置到目标应用的输入队列上;然后,当准备好处理消息时,目标应用取回该消息。点对点通讯的优点是异步通信的不阻碍特性(在发生消息传递的同时,发送器和接收器都可以进行其他任务;当发送器发送消息时,不需要接收器是可用的;并且当目标接收器接收消息时,不要求发送器是可用的)。商业可用的异步点对点通讯产品的例子是来自IBM公司的WebSphere MQ家族的产品。对于通讯概念的介绍,读者参考IBM红皮书“IBM WebSphere MQ v6 Fundamentals”,IBM文件号SG24-7128-00,2005年12月。(IBM和WebSphere是国际商业机器公司的注册商标。)
另一个建立得很好的通讯模型是发布/订阅,在发布/订阅中,如果多个订户每个都登记了诸如具体消息的他有兴趣接收的发布物,则可以将发布的通讯到这多个订户。如果发布者将其发布物发送给发布/订阅消息代理,并且订户使用代理登记了他们的要求(一般指定感兴趣的主题,其中代理可以将这些感兴趣的主题与发布的消息头中的主题信息比较),则发布者和订阅者不需要彼此标识。与底层消息队列关联地使用一些发布/订阅消息代理。IBM公司的WebSphere中间件产品家族包括发布/订阅通讯产品,如在2006年12月的发布物“IBM WebSphere Message Broker Version6 Release0-Introduction”和2006年12月的“IBM WebSphere Message Broker Version6Release0-Publish/Subscribe”中所述的,这些文件是可从IBM公司获得的。
包括IBM公司的WebSphere产品家族中的产品在内的很多商业可获得的MOM产品实现Java消息服务(JMS)。JMS是定义了用于在MOM客户端之间发送消息所使用的API的(在由Sun Microsystem公司定义的Java公共处理下开发的)Java规范。JMS允许通过对消息属性和消息头信息进行过滤来选择消息。JMS允许在设置头和过滤器时的很大灵活性,因此JMS消息处理器(handler)需要能够支持这种灵活性。因为需要能够处理自定义(custom)消息头字段和过滤器,在JMS环境中还不能以优化格式来准备和保存过滤器表达式。部分地由于该原因,没有对典型的JMS实施方式优化成高性能,并且具体地,解析和准备新的过滤器表达式的任务对性能有负面影响。下面更详细说明。(Java是Sun Microsystem公司的注册商标。)
Philip Rousselle的“Implementing the JMS Publish/Subscribe API”,Dr.Dobb’s Journal,27卷,第4期,2002年4月,28-32页说明了消息过滤的管理是JMS发布/订阅中间件性能的重要因素。Rousselle描述了Presumo JMS设计,其集中于有效地管理大过滤器并优化消息选择过滤器求值(evaluation)。结果得到了递归的JMS过滤器解析器,其检测一组过滤器中的公共元素,并用使能有效求值的方式来组合过滤器表达式。但是,在很多使用JMS的情况下,过滤器求值步骤不是消息过滤处理中唯一重要的性能。可以将用于消息过滤而实施的典型处理划分成几个步骤,包括:
1.解析过滤器以提取对于消息过滤有用的信息;
2.准备用于有效过滤器求值的过滤器(例如,将其从类似SQL的语法转换成新的格式);
3.解析所接收的消息的消息头和消息属性;以及
4.比较所接收的消息的消息头/属性与过滤器,以标识匹配消息(称作对过滤器表达式求值)。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于国际商业机器公司,未经国际商业机器公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200810005453.8/2.html,转载请声明来源钻瓜专利网。
- 上一篇:门装置
- 下一篇:管理文档数据的方法和数据结构