掌桥专利:专业的专利平台
掌桥专利
首页

私有化部署方法、装置、设备及存储介质

文献发布时间:2024-04-18 20:00:50


私有化部署方法、装置、设备及存储介质

技术领域

本申请实施例涉及计算机技术领域,尤其涉及一种私有化部署方法、装置、设备及存储介质。

背景技术

SaaS(Software-as-a-Service,软件即服务)系统通常是部署在云端服务器上的,出于信息安全的考虑或者在用户需要个性化定制开发内容时,用户通常将该系统部署至私有化服务器中,即进行私有化部署。

但由于SaaS系统庞大,该系统包括多个由不同的开发者或供应商开发的子系统(即业务服务),在进行私有化部署的过程中,将若干不同开发标准的子系统部署至私有化服务器是庞大的工作量。且现有的私有化部署方案中通常采用人力迁移的方式将子系统逐个重新部署至私有化服务器,使得进行私有化部署的人力成本高,而且用户所需要的私有化服务器的数量较多。而且由于子系统的标准不同,在私有化部署的过程中,难以实现个性化定制,不能满足用户的使用需求。

发明内容

本申请实施例提供了一种私有化部署方法、装置、设备及存储介质,解决了在私有化部署的过程中难以实现个性化定制的问题,便于快速实现私有化部署,满足用户的定制需求。

第一方面,本申请实施例提供一种私有化部署方法,应用于本地服务器中,本地服务器用于与远程服务器进行数据传输,远程服务器内存储有基于私有化部署架构开发的数据包,数据包对应于业务服务,私有化部署架构包括适配器层、应用层、领域层和基础实施层,适配器层用于提供业务服务接口并接收业务服务请求,业务服务接口包括客户端接口、硬件接口和开放接口中的至少一种;应用层用于处理业务服务请求;领域层用于内聚业务实现逻辑,并根据业务请求执行对应的业务实现逻辑;基础实施层用于响应于业务服务请求的处理,进行业务服务配置,或响应于业务实现逻辑的执行,调用数据库接口或其他的业务服务;

私有化部署方法包括:

根据预设的定制需求信息,确定所需的业务服务,并从远程服务器中获取对应于业务服务的数据包;

获取数据包对应的包名信息,包名信息对应于数据包在本地服务器的存储路径;

根据存储路径,获取数据包中对应于适配器层的文件名信息;

根据定制需求信息,在生成的配置文件中添加包名信息和文件名信息,以根据配置文件引用并聚合对应于定制需求信息的业务服务。

第二方面,本申请实施例还提供一种私有化部署装置,应用于本地服务器中,本地服务器用于与远程服务器进行数据传输,远程服务器内存储有上述实施例提供的私有化部署架构开发的数据包,该装置包括:

数据包获取模块,配置为根据预设的定制需求信息,确定所需的业务服务,并从远程服务器中获取对应于业务服务的数据包;

第一信息获取模块,配置为获取数据包对应的包名信息,包名信息对应于数据包在本地服务器的存储路径;

第二信息获取模块,配置为根据存储路径,获取数据包中对应于适配器层的文件名信息;

聚合服务模块,配置为根据定制需求信息,在生成的配置文件中添加包名信息和文件名信息,以根据配置文件引用并聚合对应于定制需求信息的业务服务。

第三方面,本申请实施例还提供一种私有化部署设备,包括:

一个或多个处理器;

存储器,用于存储一个或多个程序;

当一个或多个程序被一个或多个处理器执行,使得一个或多个处理器实现如上述实施例的私有化部署方法。

第四方面,本申请实施例还提供了一种存储有计算可执行指令的存储介质,计算机可执行指令在由处理器执行时用于执行如上述实施例的私有化部署方法。

本申请实施例从远程服务器中获取应用上述私有化部署架构开发的对应于不同业务服务的数据包,并存储在本地服务器中,根据不同的定制需求信息,在配置文件中引用不同数据包的包名信息和对应于适配器层的文件名信息,实现不同的业务服务的聚合,实现私有化部署,且无需对应于每一数据包在服务器上进行重新部署,有效地降低了私有化部署的难度。而且可以根据定制需求,在配置文件中进行更改,以实现个性化定制,满足用户的使用需求。

附图说明

图1为本申请实施例提供的私有化部署架构的示意图;

图2为本申请实施例提供的私有化部署方法的流程图;

图3为本申请实施例提供的配置文件添加相应信息的示意图;

图4为本申请另一实施例提供的私有化部署方法的流程图;

图5为本申请又一实施例提供的私有化部署方法的流程图;

图6为本申请实施例提供的私有化部署装置的结构示意图;

图7为本申请实施例提供的私有化部署设备的结构示意图。

具体实施方式

下面结合附图和实施例对本申请作进一步的详细说明,可以理解的是,此处所描述的实施例用于解释本申请,而非对本申请的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本申请相关的部分而非全部结构。

需要说明的是,在本文中,诸如第一和第二之类的关系术语仅仅用来将一个实体或操作或对象与另一个实体或操作或对象区分开来,而不一定要求或者暗示这些实体或操作或对象之前存在任何这种实际的关系或顺序。

本申请实施例提供的私有化部署方法由服务器执行,在进行私有化部署的应用场景中,通常需要将SaaS系统所包括的业务服务部署在私有化服务器中,如云屏服务、信发服务等部署在私有化服务器中。下面以本地服务器作为私有化服务器,而远程服务器作为提供SaaS系统的业务服务的服务器,本地服务器和远程服务器之间可以进行数据的传输。

在远程服务器的存储器中存储有基于私有化部署架构开发的对应于业务服务的数据包。数据包为开发者根据私有化部署架构开发的实现业务服务功能的应用程序包,并且对应不同业务服务的数据包被上传至远程服务器中作为SaaS系统的一部分,从而为用户提供多种业务服务的选择。

图1为本申请实施例提供的私有化部署架构的示意图,如图1所示,以对应于会议服务的数据包为例,基于私有化部署架构开发的该数据包包括适配器层(meet-adapter.jar)、应用层(meet-app.jar)、领域层(meet-domain.jar)和基础实施层(meet-infrastructure.jar)。其中,meet-adapter.jar、meet-app.jar、meet-domain.jar和meet-infrastructure.jar为数据包中对应于架构中各层的jar文件(一种计算机文件)。

适配器层用于提供业务服务接口并接收业务服务请求,业务服务接口包括客户端接口、硬件接口和开放接口中的至少一种。例如,适配器层中提供有HTTP接口(客户端接口的一种),服务器可以通过HTTP接口接收到客户端发送的业务请求,如在会议服务中,客户端发起获取与会人数的业务请求,服务器可以通过HTTP接口接收到该请求,并在完成相应请求的处理后,反馈业务请求的结果至客户端。

应用层用于处理业务服务请求,组装领域层中的各组件以完成具体的业务服务。而领域层内聚业务实现逻辑,如业务实现逻辑包括实现业务服务中的业务操作的组件或实体,示例性的,在通讯录服务中,其业务操作可以是,数据包的领域层包括对应实现保存联系人信息、修改联系人信息等操作保存联系人信息、修改联系人信息等操作的组件或实体,从而响应于业务请求,执行对应的业务实现逻辑。

而基础实施层是各层的基础,基础实施层用于响应业务服务请求的处理,进行业务服务配置,如响应于保存联系人信息业务操作对应的业务服务请求,将联系人信息保存至数据库中。基础实施层还用于响应于业务实现逻辑的执行,调用数据库接口,以实现数据传输,如在修改联系人信息时,需要调用数据库接口,将联系人信息从数据库中调用出来。基础实施层还用于响应于业务实现逻辑的执行,调用其他业务服务,如在提供会议服务时,客户端需要新增与会人员,则可以调用通讯录服务,以获取联系人信息,从而邀请其他客户端与会。

图2为本申请实施例提供的私有化部署方法的流程图,如图2所示,该方法包括如下步骤:

步骤S110、根据预设的定制需求信息,确定所需的业务服务,并从远程服务器中获取对应于业务服务的数据包。

定制需求信息为根据个性化定制需求确定的本地服务器中所需部署的业务服务的信息,本地服务器根据定制需求信息,确定所需的业务服务,从而本地服务器向远程服务器发起请求,以从远程服务器中获取相应的数据包。

示例性的,本地服务器可以发起获取数据包的请求,远程服务器在接收到该请求后,本地服务器与远程服务器建立连接以进行数据传输,从而使本地服务获取到相应的数据包。

在本地服务器获取到相应的数据包后,将该数据包存储在本地服务器对应的存储器中,如在存储器中新建一个文件夹用以存放数据包,该文件夹对应于数据包的包名,示例性的,在获取对应于会议服务的数据包后,本地服务器可以以一个数据包的包名com.maxhub.platform作为文件夹名称的文件夹存储对应于会议服务的数据包。

步骤S120、获取数据包对应的包名信息,包名信息对应于数据包在本地服务器的存储路径。

在获取到数据包后,还获取数据包对应的包名信息,该包名信息包括数据包的包名,可以想到的是,包名信息对应于数据包在本地服务器的存储路径,本地服务器可以根据包名信息,确定数据包的存储路径,并基于该存储路径调用数据包,以提供对应的业务服务的相关功能,如本地服务器调用通讯录服务对应的数据包,以向客户端提供对联系人信息进行修改等功能。

步骤S130、根据存储路径,获取数据包中对应于适配器层的文件名信息。

以对应于会议服务的数据包为例,该数据包包括适配器层(meet-adapter.jar)、应用层(meet-app.jar)、领域层(meet-domain.jar)和基础实施层(meet-infrastructure.jar)。在存储数据包的位置中,本地服务器从中获取适配层的文件名信息,如meet-adapter。即该文件名信息对应于适配层的jar文件的文件名,本地服务器根据配置文件中引用的jar文件调用对应的业务服务,需要说明的是,数据包中对应于适配层、应用层等的文件还可以是war文件。

步骤S140、根据定制需求信息,在生成的配置文件中添加包名信息和文件名信息。

在定制需求信息中,确定了本地服务器所需部署的业务服务,如所需部署的业务服务包括会议服务。因此,如图3所示,其中示出了配置文件的部分信息,本地服务器所生成的配置文件中添加有相应的包名信息(如com.maxhub.platform)和文件名信息(如meet-adapter),从而使得本地服务器可以根据配置文件引用并聚合对应于定制需求信息的业务服务,可以想到的是,在配置文件中增删数据包的包名信息和对应的适配层的文件名信息,能够实现本地服务器所提供的业务服务的个性化定制。

由上述方案可知,对于以私有化部署架构开发的数据包,本地服务器能够在配置文件中添加数据包对应的包名信息和文件名信息,从而将多个业务服务聚合,而且能够随意组合或拆分业务服务以形成业务服务的聚合,不仅能够快速地按需组合业务服务,完成私有部署,还能实现满足用户对私有化部署的个性化定制需求,提升用户使用体验。

图4为本申请另一实施例提供的私有化部署方法的流程图,在一实施例中,对于本地服务器所需部署的业务服务增加的情况,私有化部署方法还包括:

步骤S210、当定制需求信息对应的业务服务增加时,根据变更后的定制需求信息,从远程服务器中获取更新数据包,并存储更新数据包。

步骤S220、在配置文件中添加对应于更新数据包的包名信息和文件名信息。

可以理解的是,本地服务器所提供的业务服务需要增加时,本地服务器可以根据变更后的定制需求信息,确定更新数据包,该更新数据包为本地服务器需要新增的业务服务对应的数据包。因此,本地服务器从远程服务器获取对应的更新数据包,并存储在本地服务器对应的存储器中。而且,本地服务器在配置文件中添加该更新数据包的包名信息和文件名信息,以将所增加的业务服务聚合到已有的业务服务中,便于本地服务器进行调用,更好地实现私有化部署。

图5为本申请又一实施例提供的私有化部署方法的流程图,在一实施例中,对于本地服务器所需部署的业务服务减少的情况,私有化部署方法还包括:

步骤S310、当定制需求信息对应的业务服务减少时,根据变更后的定制需求信息,确定对应于需要删除的业务服务的删除数据包。

步骤S320、在配置文件中删除对应于删除数据包的包名信息和文件名信息。

可以理解的是,同样的,对于本地服务器所提供的业务服务需要减少时,本地服务器可以根据变更后的定制需求信息,确定删除数据包,该删除数据包为本地服务器需要删除的业务服务对应的数据包。因此,本地服务器在配置文件中删除对应于该删除数据包的包名信息和文件名信息,以从已聚合的业务服务中将需要删除的业务服务删除,使得本地服务器无法根据配置文件调用需要删除的业务服务,便于对聚合后的业务服务的管理。应当想到的是,对于是否删除对应的数据包,可以由用户进行选择。

在一实施例中,当配置文件未添加有本地服务器所调用的业务服务,本地服务器进行远程调用。即本地服务器在配置文件中未引用对应的业务服务,则确定该业务服务为远程业务服务。

对于远程业务服务,本地服务器需要确定能够提供该远程业务服务的远程服务器,并从远程服务器中调用该远程业务服务。例如,对于确定远程业务服务所对应的远程服务器,本地服务器可以根据zookeeper定位远程业务服务对应的远程服务器。

zookeeper为分布式应用程序协调服务软件,用于实现集群管理。当服务器需要访问业务服务时,zookeeper能够提供服务发现,即确定能够提供该业务服务的服务器节点。

因此,本地服务器在确定所调用的业务服务为远程业务服务时,本地服务器可以使用zookeeper能够确定提供该远程业务服务的远程服务器,从而通过网络从远程服务器中调用该业务服务。

需要说明的是,在确定能够提供该远程业务服务的远程服务器后,本地服务器还可以发送获取对应业务服务的数据包的请求,在获取到对应的数据包后,将该业务服务添加至配置文件中,以实现对该业务服务的调用。

在一实施例中,当配置文件添加有本地服务器所调用的业务服务,本地服务器进行本地调用。即本地服务器在配置文件中引用并聚合了相应的业务服务,因此,在本地服务器需要调用该业务服务时,本地服务器响应于对该业务服务的调用指令,确定该业务服务对应的数据包在本地服务器的存储器中的存储路径,基于该存储路径,本地服务器从中调用该业务服务。

示例性的,会议服务添加在配置文件中,本地服务器中需要调用会议服务时,本地服务器可以在配置文件中获取到会议服务的包名信息,从而确定会议服务对应的数据包存储在com.maxhub.platform作为文件夹名称的文件夹内,进而确定对应的数据包的存储路径,从而使得本地服务器根据相应的存储路径调用会议服务,以实现本地服务器对本地提供的业务服务的本地调用。

图6为本申请实施例提供的私有化部署装置的结构示意图,该装置用于执行上述实施例提供的私有化部署方法,并具备执行方法相应的功能模块和有益效果,如图所示,该装置包括:

数据包获取模块201,配置为根据预设的定制需求信息,确定所需的业务服务,并从远程服务器中获取对应于业务服务的数据包;

第一信息获取模块202,配置为获取数据包对应的包名信息,包名信息对应于数据包在本地服务器的存储路径;

第二信息获取模块203,配置为根据存储路径,获取数据包中对应于适配器层的文件名信息;

聚合服务模块204,配置为根据定制需求信息,在生成的配置文件中添加包名信息和文件名信息,以根据配置文件引用并聚合对应于定制需求信息的业务服务。

在上述实施例的基础上,聚合服务模块204还配置为:

当定制需求信息对应的业务服务增加时,根据变更后的定制需求信息,从远程服务器中获取更新数据包,并存储更新数据包;

在配置文件中添加对应于更新数据包的包名信息和文件名信息。

在上述实施例的基础上,聚合服务模块204还配置为:

当定制需求信息对应的业务服务减少时,根据变更后的定制需求信息,确定对应于需要删除的业务服务的删除数据包;

在配置文件中删除对应于删除数据包的包名信息和文件名信息。

在上述实施例的基础上,还包括服务调用模块,服务调用模块配置为:

当配置文件未添加有本地服务器所调用的第一业务服务时,确定第一业务服务为远程业务服务;

确定远程业务服务所对应的远程服务器,并从远程服务器中调用远程业务服务。

在上述实施例的基础上,服务调用模块还配置为:

根据zookeeper定位远程业务服务所对应的远程服务器,并通过网络从远程服务器中调用远程业务服务。

在上述实施例的基础上,服务调用模块还配置为:

当配置文件添加有本地服务器所调用的第一业务服务时,响应于对第一业务服务的调用指令,确定第一业务服务对应的数据包在本地服务器中的存储路径;

根据存储路径,调用第一业务服务。

在上述实施例的基础上,文件名信息包括数据包中对应于适配器层的jar文件的文件名,以使本地服务器根据配置文件中引用的jar文件调用对应的业务服务。

值得注意的是,上述私有化部署装置的实施例中,所包括的各个单元只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。

图7为本申请实施例提供的私有化部署设备的结构示意图,该设备可用于执行上述实施例提供的私有化部署方法,具备执行方法相应的功能模块和有益效果,如图所示,该设备包括处理器301、存储器302、输入装置303和输出装置304,设备中处理器301的数量可以是一个或多个,图中以一个处理器301为例;设备中的处理器301、存储器302、输入装置303和输出装置304可以通过总线或其他方式连接,图中以通过总线连接为例。存储器302作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本申请实施例中的私有化部署方法对应的程序指令/模块。处理器301通过运行存储在存储器302中的软件程序、指令以及模块,从而执行设备的各种功能应用以及数据处理,即实现上述的私有化部署方法。

存储器302可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据终端设备的使用所创建的数据等。此外,存储器302可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储器302可进一步包括相对于处理器310远程设置的存储器,这些远程存储器可以通过网络连接至终端设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。

输入装置303可用于接收输入的数字或字符信息,如路由消息等。输出装置304可用于发送与服务器进行交互的信息。

本申请实施例还提供一种计算机程序产品,该计算机程序产品包括计算机程序,该计算机程序由处理器执行时用于实现如本申请任意实施例所提供的私有化部署方法中的相关操作,且具备相应的功能和有益效果。

本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。

因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可读存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。存储器可能包括计算机可读存储介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。存储器是计算机可读存储介质的示例。

计算机可读存储介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可执行指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。

还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。

注意,上述仅为本申请的较佳实施例及所运用技术原理。本领域技术人员会理解,本申请不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本申请的保护范围。因此,虽然通过以上实施例对本申请进行了较为详细的说明,但是本申请不仅仅限于以上实施例,在不脱离本申请构思的情况下,还可以包括更多其他等效实施例,而本申请的范围由所附的权利要求范围决定。

相关技术
  • 一种液位检测装置和包含其的设备以及液位检测方法、电子设备及计算机可读存储介质
  • 一种文本行区域检测方法、装置、介质和电子设备
  • 一种卡顿检测方法、装置、电子设备和存储介质
  • 一种动目标检测方法、装置、电子设备及存储介质
  • 一种浴室加热装置和用于控制浴室加热装置的方法、设备、电子设备及计算机可读存储介质
  • 一种检测光中继设备故障的方法、装置、电子设备及介质
  • 一种光伏组件故障检测方法、装置、电子设备及存储介质
技术分类

06120116537458