一种服务框架系统的制作方法

文档序号:11156815阅读:372来源:国知局
一种服务框架系统的制造方法与工艺

本发明涉及互联网技术领域,特别是涉及一种服务框架系统。



背景技术:

目前,互联网行业发展迅速,为提高基础服务的开发速率,和方便基础服务的迭代,提出了服务框架的应用。与软件框架不同,服务框架是面向特定领域的可复用软件集成平台,反映了该领域应用的一般需求和结构。

虽然目前行业内已经有一些服务框架可以使用,但是存在服务框架响应不够及时,响应速度较低的问题。



技术实现要素:

本发明解决的技术问题是提供一种服务框架系统,提高服务框架系统的响应速度。

为解决上述技术问题,本发明实施例提供一种服务框架系统,所述系统包括:

至少一个插件接口单元和框架核心单元;其中,所述插件接口单元,适于存储插件的配置信息;所述框架核心单元,适于定时检测所述插件的配置信息是否正确,当所述插件的配置信息正确时,控制所述插件处于启动状态。

可选地,所述框架核心单元还适于当所述插件的配置信息错误时,输出插件配置错误信息至所述插件的日志中。

可选地,所述框架核心单元还适于:

检测所述插件的配置信息是否从所述插件接口单元中移除,当所述插件的配置信息被移除时,删除所述框架核心单元中与所述插件对应的服务功能模块。

可选地,所述服务框架系统还包括所述服务框架系统还包括至少一个代理服务单元,所述代理服务单元适于存储代理服务的配置信息;所述框架核心单元还适于检测所述代理服务的配置信息是否正确,当所述代理服务的配置信息正确时,控制所述代理服务处于生效状态。

可选地,所述框架核心单元还适于当所述代理服务的配置信息错误时,输出错误信息至指定目录。

可选地,所述框架核心单元还存储有所述服务框架系统的环境配置信息所依赖的库。

可选地,所述框架核心单元还适于当解析出客户端发来的服务请求所针对的插件时,查询针对该插件的干预权限信息,使得该插件根据所述干预权限信息指示的处理权限,在多个备选处理阶段中选择符合所述处理权限的处理阶段。

与现有技术相比,本发明实施例的技术方案具有以下有益效果:

本发明实施例提供的服务框架系统,包括插件接口单元和框架核心单元。所述插件接口单元适于存储插件的配置信息,本发明实施例通过框架核心单元定时检测所述插件的配置信息是否正确,当所述插件的配置信息正确时,控制所述插件处于启动状态,从而实现定期自动检测各个插件的配置信息的正确性,避免在启动插件前还需手动验证该插件配置信息的正确性,提高了验证服务框架配置信息的效率,进而提高了服务框架系统响应服务请求的速率。与此同时,本发明实施例的服务框架系统包括至少一个插件接口单元,因而实现一个服务框架系统支持多个插件服务模块的开发和使用,从而提高服务框架系统的可复用性。

进一步地,本发明实施例的服务框架系统通过在检测到插件的配置信息被移除时,删除框架核心单元中与所述插件对应的服务功能模块,从而使得冗余的服务功能模块得到及时的删除,不需要手动检测和卸载,提高了服务框架的维护效率。

进一步地,本发明实施例的服务框架系统还包括至少一个代理服务单元,所述代理服务单元存储相应的配置信息,使得服务框架系统同时支持插件服务和代理服务,提高服务框架系统的通用性。

进一步地,本发明实施例的框架核心单元中还存储有所述服务框架系统的环境配置信息所依赖的库,使得在安装服务框架系统时,只需要将服务框架拷贝到预设的目录即可使用,提高了服务框架系统的可移植性。

附图说明

图1是本发明实施例中的一种服务框架系统的结构示意图;

图2是本发明实施例中的另一种服务框架系统的结构示意图。

具体实施方式

如前所述,为提高基础服务的开发速率,提出了服务框架的应用。虽然目前行业内已经有一些服务框架可以使用,但是存在验证服务框架配置效率较低的问题。

本发明实施例提供的服务框架系统,包括插件接口单元和框架核心单元。所述插件接口单元适于存储插件的配置信息,本发明实施例通过框架核心单元定时检测所述插件的配置信息是否正确,当所述插件的配置信息正确时,控制所述插件处于启动状态,从而实现定期自动检测各个插件的配置信息的正确性,避免在启动插件前还需手动验证该插件配置信息的正确性,提高了验证服务框架配置信息的效率。与此同时,本发明实施例的服务框架系统包括至少一个插件接口单元,因而实现一个服务框架系统支持多个插件服务模块的开发和使用,从而提高服务框架系统的可复用性。

为使本发明的上述目的、特征和有益效果能够更为明显易懂,下面结合附图对本发明的具体实施例做详细的说明。

图1是本发明实施例中的一种服务框架系统的结构示意图。如图1所示的服务框架系统10,可以包括:至少一个插件接口单元101和框架核心单元102。

所述插件接口单元101,适于存储插件的配置信息。

在具体实施中,每个所述插件接口单元101与一个插件的业务功能模块对应,多个插件接口单元101形成一个插件池。例如,将所述服务框架系统应用于二手物品交易平台的开发,该服务框架系统具有2个插件接口单元101,分别对应“二手车”和“二手房”的插件的服务功能模块。

本发明实施例的服务框架系统包括至少一个插件接口单元101,因而可实现一个服务框架支持多个插件服务模块的开发和使用。

所述框架核心单元102,适于定时检测所述插件的配置信息是否正确,当所述插件的配置信息正确时,控制所述插件处于启动状态。

在具体实施中,检测插件的配置信息是否正确是指检测插件的配置信息是否符合预设的框架开发规范所要求的配置信息。其中,所述框架开发规范所要求的配置信息可以预先存储于所述框架核心单元102。

在具体实施中,每个所述插件接口单元101可以位于同一级目录,该目录为预先设定的目录L。例如,所述服务框架系统包括2个插件接口单元101,分别记为第一插件接口单元和第二插件接口单元,第一插件接口单元存储第一插件的配置信息,第二插件接口单元存储第二插件的配置信息。第一插件接口单元和第二插件接口单元均位于目录L下,所述框架核心单元102在定期检测配置信息时,按照预先设定的目录L所指示的路径可查找到第一插件接口单元和第二插件接口单元,并可读取其中各自存储的配置信息,以进一步验证各自配置信息是否正确。

具体地,所述框架核心单元102可以包括定时器和检测执行模块,由定时器定期发出检测命令后,检测执行模块根据检测命令检测相应的插件接口单元101中的配置信息是否正确。如果正确,则控制所述插件处于启动状态。具体而言,如果是首次启动,则控制启动所述插件,如果不是首次启动(也即,所述插件已经处于启动状态),则控制所述插件维持启动状态。

由于设置所述框架核心单元102定时检测所述插件的配置信息,那么在需要新增插件时,可以在该同级目录下新增一个插件接口单元101存储新增插件的配置信息,一旦新增的插件接口单元中的配置信息经定时检测验证正确时,则可启动该新增插件,并将其加入服务行列,从而不需要人工手动启动新增插件,提高了验证配置信息的效率和启动插件的效率,进而提高了服务框架系统的响应速率。

在具体实施中,所述框架核心单元102还适于检测所述插件的配置信息是否从所述插件接口单元101中移除,当所述插件的配置信息被移除时,删除所述框架核心单元102中与所述插件对应的服务功能模块。插件对应的服务功能模块为实现该插件业务功能的具体模块,存储于所述框架核心单元102中。具体地,可以设置所述插件接口单元101位于指定的路径下,所述框架核心单元102可以通过检测命令查找所述在该指定的路径下所述插件的配置信息是否存在,如果不存在,则表明所述插件的配置信息被移除,删除所述框架核心单元102中与所述插件对应的服务功能模块。

由此可以看出,本发明实施例通过所述框架核心单元定时检测所述插件的配置信息是否正确,可以实现及时启动新增插件和及时删除冗余的插件的服务功能模块。

在具体实施中,所述框架核心单元102还适于当所述插件的配置信息错误时,输出插件配置错误信息至所述插件的日志中。所述插件的日志可以存放于特定的日志目录下。通过输出错误信息到日志中,可以方便排查插件服务的错误原因。

图2是本发明实施例中的另一种服务框架系统的结构示意图。所述服务框架系统20可以包括:至少一个插件接口单元201和框架核心单元202。其中:

所述插件接口单元201,适于存储插件的配置信息;

所述框架核心单元202,适于定时检测所述插件的配置信息是否正确,当所述插件的配置信息正确时,控制所述插件处于启动状态。

有关所述插件接口单元201和所述框架核心单元202的上述功能的说明可以对应参照图1中所述插件接口单元101和所述框架核心单元102的说明,不再赘述。

在具体实施中,所述服务框架系统20还可以包括:至少一个代理服务单元203,所述代理服务单元203适于存储代理服务的配置信息;所述框架核心单元202还适于检测所述代理服务的配置信息是否正确,当所述代理服务的配置信息正确时,控制所述代理服务处于生效状态。

在具体实施中,所述框架核心单元202可以定时检测所述代理服务的配置信息是否正确,也可以设置在其他事件发生时触发检测所述代理服务的配置信息。

上述检测代理服务的配置信息是否正确是指检测所述代理服务是否符合规定的代理服务配置文件开发规范,例如,可以将nginx代理服务配置作为代理服务配置文件开发规范。

在具体实施中,如果新增了代理服务,只需要将新增的代理服务的配置信息存放于指定的代理服务目录,由此,通过本发明实施例的所述框架核心单元202检测到所述代理服务的配置信息正确时,则控制所述代理服务处于生效状态,从而实现及时使代理服务生效,进而提高代理服务的响应速度。

在具体实施中,所述框架核心单元202还适于当所述代理服务的配置信息错误时,输出代理服务错误信息至指定目录,以便从所述指定目录获取代理服务的错误原因,从而方便代理服务的维护。

所述框架核心单元202还存储有所述服务框架系统的环境配置信息所依赖的库,使得在安装服务框架系统时,只需要将服务框架拷贝到预设的目录即可使用,从而提高服务框架系统的可移植性。

在具体实施中,所述框架核心单元202还适于当解析出客户端发来的服务请求所针对的插件时,查询针对该插件的干预权限信息,使得该插件根据所述干预权限信息指示的处理权限,在多个备选处理阶段中选择符合所述处理权限的处理阶段处理所述服务请求。

具体地,在一个非限制性的例子中,客户端发来的服务请求可以为针对某插件的http请求包,该http请求包需要由相应插件的服务功能模块来实现响应,本实施例通过查询针对该插件的干预权限信息,可以获得该插件对应的处理权限,进一步而言,可以获知该插件可以在哪些备选处理阶段进行哪些权限的处理操作。

例如,一般而言,在插件获取http请求包后,要经过11个处理阶段,分别为:读取请求内容阶段、server请求地址重写阶段、配置查找阶段、请求地址重写阶段、访问权限检查提交阶段、访问权限检查准备阶段、访问权限检查阶段、访问权限检查提交阶段、配置项try_files处理阶段、内容产生阶段和日志模块处理阶段。本实施例中的所述框架核心单元202预设了不同插件各自的处理权限,处理权限包括可以处理的阶段和处理操作的内容,从而使得不同的插件可以在不同的处理阶段进行相应的处理操作。例如,通过预设插件A和插件B的处理权限,使得插件A可以在上述备选阶段中的“访问权限检查准备阶段”进行特别权限的处理操作,插件B可以在上述备选阶段中的“访问权限检查提交阶段”进行特别权限的处理操作等。而现有技术中,插件A和插件B均只能在上述11个备选阶段的每个阶段进行常规权限的操作,具体而言,插件A不能在11个备选阶段中的某个阶段进行特别权限的操作,插件B也不能在上述备选阶段中进行特别权限的操作。相对于常规权限,特别权限可以具有更高的处理优先级,或者可以访问更高级的数据,或者可以具有其他特权。由上,通过处理权限的设置,使得服务请求的处理过程更加灵活、更加多样性。

需要说明的是,所述备选处理阶段不以上述列举为限。

由此,本发明实施例的服务框架系统不仅支持插件服务,还同时支持代理服务,提高服务框架系统的通用性。此外本发明实施例的服务框架系统通过对不同插件设置在不同备选处理阶段的操作,从而提高服务框架系统对不同插件的兼容性,进而提高服务框架系统的复用性。

本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于以计算机可读存储介质中,存储介质可以包括:ROM、RAM、磁盘或光盘等。

虽然本发明披露如上,但本发明并非限定于此。任何本领域技术人员,在不脱离本发明的精神和范围内,均可作各种更动与修改,因此本发明的保护范围应当以权利要求所限定的范围为准。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1