远程调用服务的发布方法和装置的制作方法

文档序号:7864787阅读:104来源:国知局
专利名称:远程调用服务的发布方法和装置的制作方法
技术领域
本发明涉及计算机领域,具体地,涉及一种远程调用服务的发布方法和装置。
背景技术
由于现有简述中的云计算操作系统采用分层部署,因此需要对某些相关业务发布成为远程调用服务。而现有技术是针对某一业务发布特有的服务,这样会影响系统整体的兼容性与扩展性。
由于现有技术在开发过程中需要将业务模块通过硬编码方式或配置方式发布成为可远程访问的服务。这样,就存在一个问题,如果远程通讯访问服务方式发生变更,则需要每个已发布的业务模块都将被修改,这样会产生庞大的工作量,同时也会影响系统扩展性。
针对相关技术中远程服务发布存在的扩展性、变更性差的问题,目前尚未提出有效的解决方案。发明内容
针对相关技术中远程服务发布存在的扩展性、变更性差的问题,本发明提出一种远程调用服务的发布方法和装置,能够监控并远程调用业务服务,保证系统良好的扩展性和变更性。
本发明的技术方案是这样实现的
根据本发明的一个方面,提供了一种远程调用服务的发布方法,该方法包括
对已发布的业务服务进行监控,确定是否存在需要变更为远程调用服务的业务服务;
对于需要变更为远程调用服务的业务服务,根据该业务服务的接口抓取业务服务样本,并对该业务服务进行远程发布。
其中,对已发布的业务服务进行监控,确定是否存在需要变更为远程调用服务的业务服务包括
根据已发布的业务服务的配置文件进行过滤,得到需要变更为远程调用服务的业务服务的列表。
并且,列表中包括需要变更为远程调用服务的业务服务的接口名称。
此外,抓取业务服务样本包括
对需要变更为远程调用服务的业务服务创建跟踪器,由跟踪器抓取该业务服务的抓取业务服务样本。
而且,业务服务为OSGI业务服务。
根据本发明的另一个方面,提供了一种远程调用服务的发布装置,该装置包括
监控模块,用于对已发布的业务服务进行监控,确定是否存在需要变更为远程调用服务的业务服务;
发布模块,用于对需要变更为远程调用服务的业务服务,根据该业务服务的接口抓取业务服务样本,并对该业务服务进行远程发布。
其中,监控模块用于根据已发布的业务服务的配置文件进行过滤,得到需要变更为远程调用服务的业务服务的列表。
并且,列表中包括需要变更为远程调用服务的业务服务的接口名称。
此外,发布模块具体用于对需要变更为远程调用服务的业务服务进行跟踪,并抓取该业务服务的抓取业务服务样本。
而且,业务服务为OSGI业务服务。
本发明通过对已发布的业务服务进行监控,确定是否存在需要变更为远程调用服务的业务服务,对于需要变更为远程调用服务的业务服务,根据该业务服务的接口抓取业务服务样本,并对该业务服务进行远程发布,能够监控并远程调用业务服务,保证系统良好的扩展性和变更性,避免对业务服务进行远程发布时产生大量的工作量,提高了业务发布的效率。


为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图I是根据本发明实施例的远程调用服务的发布方法的流程图2是根据本发明实施例的远程调用服务的发布装置的原理框图3是根据本发明实施例的业务服务远程调用和监控发布的过程。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员所获得的所有其他实施例,都属于本发明保护的范围。
根据本发明的实施例,提供了一种远程调用服务的发布方法。
如图I所示,根据本发明实施例的远程调用服务的发布方法包括
步骤S101,对已发布的业务服务进行监控,确定是否存在需要变更为远程调用服务的业务服务;
步骤S103,对于需要变更为远程调用服务的业务服务,根据该业务服务的接口抓取业务服务样本,并对该业务服务进行远程发布。
其中,对已发布的业务服务进行监控,确定是否存在需要变更为远程调用服务的业务服务包括
根据已发布的业务服务的配置文件进行过滤,得到需要变更为远程调用服务的业务服务的列表。
并且,列表中包括需要变更为远程调用服务的业务服务的接口名称。
此外,抓取业务服务样本包括
对需要变更为远程调用服务的业务服务创建跟踪器,由跟踪器抓取该业务服务的抓取业务服务样本。
而且,业务服务为OSGI (Open Service Gateway Initiative 技术是面向 Java 的动态模型系统,OSGi技术提供允许应用程序使用精炼、可重用和可协作的组件构建的标准化原语,这些组件能够组装进一个应用和部署中)业务服务。
根据本发明的一个实施例,提供了一种远程调用服务的发布装置。
如图2所示,根据本发明实施例的远程调用服务的发布装置包括
监控模块21,用于对已发布的业务服务进行监控,确定是否存在需要变更为远程调用服务的业务服务;
发布模块22,用于对需要变更为远程调用服务的业务服务,根据该业务服务的接口抓取业务服务样本,并对该业务服务进行远程发布。
其中,监控模块用于根据已发布的业务服务的配置文件进行过滤,得到需要变更为远程调用服务的业务服务的列表。
并且,列表中包括需要变更为远程调用服务的业务服务的接口名称。
此外,发布模块具体用于对需要变更为远程调用服务的业务服务进行跟踪,并抓取该业务服务的抓取业务服务样本。
而且,业务服务为OSGI业务服务。
如图3所示,为本发明实施例的业务服务远程调用和监控发布的过程。
首先,进行业务服务的发布,其次,发布远程调用服务,并且监控发布的过程,最后,发布OSGI服务。
本发明的技术方案依赖于云计算应用部署环境(OSGI),系统动态发布远程访问服务步骤如下
A.监控部署环境中所有已发布的OSGI服务;
B.根据已配置文件,过滤部署环境中的OSGI服务,配置文件中的内容为准备发布远程访问服务的接口名称列表;
C.将业务服务变更为远程访问服务;
为实现上述系统动态发布远程访问服务,需要定义一个远程服务发布器与服务参数读取器。
第一,服务参数读取器,用于实现读取服务发布配置文件,并缓存需要发布的服务列表。
服务参数读取器的对应接口如下
首先,初始化读取服务发布配置文件,并缓存需要发布的服务列表
public void init O throws IOException
其次,获取已发布的服务列表
public List<String>getDepIoyServiceO
最后,通过服务主键,获取指定服务信息
public String getPropertyValue(String key)
服务参数读取器的流程描述如下5
远程服务发布器的对应接口如下
首先,通过跟踪器发布远程调用服务
Public void deployService(BundleContext context)throws Exception
其次,创建服务跟踪发布器
private ServiceTrackerCustomizer createStCustomizer(
final BundleContext context, final Class〈 >clz)
远程服务发布器的流程描述如下
首先,获取需要发布的服务列表;
其次,循环遍历服务列表,并创建相应的跟踪器;
并且,还包括以下描述
监听OSGI服务环境中所有已发布的业务服务;
判断加载服务是否是需要变更的远程服务;
如果是直接将此业务服务发布成为远程调用服务;
监听OSGI服务环境中已卸载服务操作;
判断卸载服务是否是远程服务;
如果是卸载当前远程服务。
本发明的技术方案为一种远程调用服务的发布方法和装置,以解决云计算环境中不同业务系统发布远程服务扩展性、变更性差等问题。
本发明的技术方案定义了一个远程服务发布器与服务参数读取器,实现动态发布远程服务功能,对上层业务系统屏蔽了底层的发布方式,上层业务只需要关注自身业务逻辑,而在底层使用统一的发布方式,屏蔽了不同业务服务的差异性。在调用远程服务发生变更时,只需要修改远程服务发布方式,而不会影响到业务逻辑处理,保证了系统良好的扩展性。
本发明的技术方案主要包括服务发布配置管理与动态发布远程服务。该技术方案与具体业务处理逻辑无关,而是以一种监听器的方式存在,系统会根据服务配置自动将本地服务发布成为可远程调用的服务。避免业务开发人员过多的干预非业务处理环节,同时降低了因远程调用方式改变,而影响到业务模块的修改。
综上所述,借助于本发明的上述技术方案,通过对已发布的业务服务进行监控,确定是否存在需要变更为远程调用服务的业务服务,对于需要变更为远程调用服务的业务服务,根据该业务服务的接口抓取业务服务样本,并对该业务服务进行远程发布,能够监控并远程调用业务服务,保证系统良好的扩展性和变更性,避免对业务服务进行远程发布时产生大量的工作量,提高了业务发布的效率。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
权利要求
1.一种远程调用服务的发布方法,其特征在于,包括 对已发布的业务服务进行监控,确定是否存在需要变更为远程调用服务的业务服务; 对于需要变更为远程调用服务的业务服务,根据该业务服务的接ロ抓取业务服务样本,并对该业务服务进行远程发布。
2.根据权利要求I所述的发布方法,其特征在干,对已发布的业务服务进行监控,确定是否存在需要变更为远程调用服务的业务服务包括 根据已发布的业务服务的配置文件进行过滤,得到需要变更为远程调用服务的业务服务的列表。
3.根据权利要求2所述的发布方法,其特征在干,所述列表中包括需要变更为远程调用服务的业务服务的接ロ名称。
4.根据权利要求I所述的发布方法,其特征在于,抓取业务服务样本包括 对需要变更为远程调用服务的业务服务创建跟踪器,由所述跟踪器抓取该业务服务的抓取业务服务样本。
5.根据权利要求I所述的发布方法,其特征在于,业务服务为OSGI业务服务。
6.一种远程调用服务的发布装置,其特征在于,包括 监控模块,用于对已发布的业务服务进行监控,确定是否存在需要变更为远程调用服务的业务服务; 发布模块,用于对需要变更为远程调用服务的业务服务,根据该业务服务的接ロ抓取业务服务样本,并对该业务服务进行远程发布。
7.根据权利要求6所述的发布装置,其特征在于,所述监控模块用于根据已发布的业务服务的配置文件进行过滤,得到需要变更为远程调用服务的业务服务的列表。
8.根据权利要求7所述的发布装置,其特征在干,所述列表中包括需要变更为远程调用服务的业务服务的接ロ名称。
9.根据权利要求6所述的发布装置,其特征在于,所述发布模块具体用于对需要变更为远程调用服务的业务服务进行跟踪,并抓取该业务服务的抓取业务服务样本。
10.根据权利要求6所述的发布装置,其特征在于,业务服务为OSGI业务服务。
全文摘要
本发明公开了一种远程调用服务的发布方法和装置,该方法包括对已发布的业务服务进行监控,确定是否存在需要变更为远程调用服务的业务服务;对于需要变更为远程调用服务的业务服务,根据该业务服务的接口抓取业务服务样本,并对该业务服务进行远程发布。本发明通过对已发布的业务服务进行监控,确定是否存在需要变更为远程调用服务的业务服务,对于需要变更为远程调用服务的业务服务,根据该业务服务的接口抓取业务服务样本,并对该业务服务进行远程发布,能够监控并远程调用业务服务,保证系统良好的扩展性。
文档编号H04L29/08GK102984208SQ20121043776
公开日2013年3月20日 申请日期2012年11月5日 优先权日2012年11月5日
发明者胡亮, 赵崇山, 高运文, 季锡洋, 田勇 申请人:曙光云计算技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1