[发明专利]用于执行动态软件版本选择的方法和系统有效
申请号: | 201110359976.4 | 申请日: | 2011-11-14 |
公开(公告)号: | CN102567015A | 公开(公告)日: | 2012-07-11 |
发明(设计)人: | D·G·沃德;S·J·韦勃 | 申请(专利权)人: | 国际商业机器公司 |
主分类号: | G06F9/44 | 分类号: | G06F9/44;G06F9/445 |
代理公司: | 北京市中咨律师事务所 11247 | 代理人: | 张亚非;于静 |
地址: | 美国*** | 国省代码: | 美国;US |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 用于 执行 动态 软件 版本 选择 方法 系统 | ||
技术领域
本发明的各方面一般地涉及软件版本选择,更具体地说,涉及在版本更改期间,以对支持的过程或服务干扰最小或无干扰的方式动态地选择软件版本。
背景技术
中间件可使一台或多台机器上运行的多个进程进行交互。因此,中间件在支持诸如事务处理系统与消息传递和排队系统之类的复杂分布式应用方面非常有用。作为一个实例,形式为联机事务处理(OLTP)系统的中间件经常用于支持关键业务过程和服务。例如,联机事务处理系统可用于便利和管理在订单录入系统中捕获新数据,更新现有数据,处理数据录入和检索等的面向事务的应用。作为另一示例,形式为消息排队系统的中间件可用于通过将应用特定的消息写入队列以及从队列检索这些消息来便利程序间通信,而不需要通信程序之间具有专门的逻辑连接。
包括现代OLTP系统、消息和排队系统等的中间件一般支持跨网络的事务并且可以跨由不同实体控制的一个或多个域。因此,诸如OLTP应用与消息和排队应用之类的中间件应用通常使用允许事务在网络内的不同计算机平台上运行的客户机/服务器处理和代理操作(brokering)来实现。因此,对此类中间件系统的软件升级通常需要关闭应用,从而使关联的应用脱机以允许进行软件安装和必要时的配置。
发明内容
根据本发明的方面,动态软件版本选择通过将绑定库与软件组件进行关联来执行。所述绑定库包括加载器组件和绑定组件,其中所述加载器组件充当软件组件和绑定组件之间的中介(intermediary),且所述绑定组件包括软件组件端逻辑。动态软件版本选择进一步包括由加载器组件识别触发器,以将库从绑定组件加载到处理设备的存储器,以及由加载器组件选择所需库版本,其中所需库版本是从与绑定库的绑定组件关联的至少两个库版本中选择的。仍进一步地,动态软件版本选择包括在不需要重新启动关联的软件组件的情况下,将所需库版本加载到计算机处理系统的存储器。例如,加载器组件所作的加载所需库版本的判定可以由控制过程所填充的库版本表或其他源控制。
附图说明
图1是根据本发明的方面用于实现动态软件版本选择的系统的示意图。
图2是示出根据本发明的方面用于实现动态软件版本选择的示例性方法的流程图。
图3是根据本发明的方面用于在消息传递系统环境的示例性上下文中实现动态软件版本选择的系统的示意图。
图4是根据本发明的方面使用共享库版本表的用于实现动态软件版本选择的系统的示意图。
图5是根据本发明的方面使用共享库版本表和共享程序版本表的用于实现动态软件版本选择的系统的示意图。
图6是具有用于实现如本文详细描述的根据本发明的方面的功能的计算机可读存储介质的计算机系统的方块图。
具体实施方式
本发明的各方面提供了能够在不关闭软件系统或不以其他方式中断服务的情况下通过新软件修改软件系统的技术。软件修改包括,例如,实现软件升级,恢复到早期软件版本,重新加载软件版本,修复或修补软件版本等。因此,提供了能够在不发生中断的情况下通过新软件升级的软件系统,所述新软件例如包含对已知问题的修复和/或新功能,并且其部件可使用诸如服务等级之类的不同软件版本等。软件系统还可以回退到早期版本。此外,还可以通过新软件修改客户端系统和服务器端系统两者。
进一步地,此处描述的本发明的各方面提供了在持续运行的进程内的应用编程接口(API)边界上管理版本化实现,从而不需要针对关联的软件代码进行任何进程重新启动。在不重新启动进程的情况下实施更新的能力甚至可以在进程为不受用于执行软件修改的更新机制控制的第三方应用(例如,客户应用)的情况下实现。因此,很容易实现本机代码库的运行时更新和修改。而且,更新机制可以实现动态内部状态处理以允许在运行进程之下的函数库版本转换,例如,在使用动态链接库的系统中的这种函数库版本转换。
更进一步地,本发明的方面提供了更新机制,此机制便利了做出和控制迁移判定(例如,如何以及何时升级、降级或以其他方式替换可能存储在库中的软件代码)的能力。因此,此更新机制可以表现出动态行为,从而提供了软件版本修改过程和判定的灵活性。而且,此更新机制可以例如逐程序地或基于其他选择标准实现选择性软件版本控制。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于国际商业机器公司,未经国际商业机器公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110359976.4/2.html,转载请声明来源钻瓜专利网。