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

一种项目混合云部署方法及装置

文献发布时间:2024-04-18 19:53:33


一种项目混合云部署方法及装置

技术领域

本申请涉及服务器通信技术领域,特别涉及一种项目混合云部署方法及装置。

背景技术

在企业项目开发中,项目可以是单体架构,也可以是微服务架构,在项目架构上使用技术手段改造优化项目微服务结构,来支持更高的并发流量,多个项目部署到多台服务器上,使得各模块性能大大提高。

随着企业项目越来越多,项目功能越来越多样化,所承担的业务逻辑也越来越复杂,业务逻辑增加导致模块也会随之增加,项目就需要更多的服务器来运行各个模块,但是增加多台服务器会使得企业在机房方面成本会大大提高,从而引入云端部署。

而企业自建机房购买服务器的成本很高,并且引入云端后,多个模块之间的通信是一个困扰问题,也会存在通信延迟问题,并且在网络传输数据的安全性上也需要进行处理,各个模块的数据也无法直观展示出来,无法随时监控自建机房以及云端的服务状态。

发明内容

本申请的主要目的为提供一种项目混合云部署方法及装置,旨在解决现有技术中上述存在的技术问题。

本申请提出一种项目混合云部署方法,其改进之处在于:

将项目模块分别插入所述第一机房服务器、所述第二机房服务器以及云端服务器中,并在所述第一机房服务器、所述第二机房服务器、云端服务器建立存储节点;

当所述云端服务器、所述第一机房服务器以及所述第二机房服务器内的项目模块需要相互调用时,分别获取任意一方服务器的项目模块数据,其中,所述获取任意一方服务器的项目模块数据时,还包括:由第一管理者模块发送管理信息;和或,由第二管理模块发送管理信息;接收所述管理信息的服务器将所述管理信息进行加密并将加密包返回;

启动项目模块,当项目模块数据运行成功时,接收所述管理信息的服务器将所述管理信息存入自身的存储节点,并将存储动作的信息同步至其他两个服务器,以请求其他两个服务器保存所述管理信息。

作为上述技术方案的改进,所述当项目模块数据运行成功时,还包括:

建立第一管理者模块和第二管理者模块;

将所述第一本地服务器、所述第二本地服务器的项目模块发送至第一管理者模块,将所述云端服务器的项目模块发送至第二管理者模块;

对所述第一管理者模块和所述第二管理者模块的项目模块数据进行解密,以获取所述第一本地服务器、所述第二本地服务器以及云端服务器的地址信息;

启动任意一项所述第一本地服务器、所述第二本地服务器以及云端服务器的项目模块时;

若任意一项所述第一本地服务器、所述第二本地服务器以及云端服务器的项目模块无法使用,则清空第一本地服务器、所述第二本地服务器以及云端服务器相对应的项目模块数据。

作为上述技术方案的进一步改进,所述管理信息包括第一管理信息、第二管理信息以及第三管理信息。

作为上述技术方案的进一步改进,所述将项目模块分别插入所述第一机房服务器、所述第二机房服务器以及云端服务器中,还包括:

启动所述第一机房服务器内的项目模块;

所述第一机房服务器将项目模块数据发送至第一管理者模块上,所述第一管理者模块对项目模块数据进行加密计算,生成第一管理信息;

将第一管理信息保存至所述第一机房服务器的存储节点。

作为上述技术方案的进一步改进,所述将项目模块分别插入所述第一机房服务器、所述第二机房服务器以及云端服务器中,还包括:

启动所述第二机房服务器内的项目模块;

所述第二机房服务器将项目模块数据发送至所述第一管理者模块上,所述第一管理模块对项目模块数据进行加密计算,生成第二管理信息;

将第二管理信息保存至所述第一机房服务器的存储节点。

作为上述技术方案的进一步改进,所述将项目模块分别插入所述第一机房服务器、所述第二机房服务器以及云端服务器中,还包括:

启动所述云端服务器内的项目模块;

所述云端服务器将项目模块数据发送至第二管理模块上,所述第二管理模块对项目模块数据进行加密计算,生成第三管理信息;

将第三管理信息保存至所述第一本地服务器的存储节点。

作为上述技术方案的进一步改进,对所述第一机房服务器的存储节点进行数据更新,触发数据同步至所述第二机房服务器的存储节点或所述云端服务器的存储节点上。

本申请还提供了一种项目混合云部署装置,包括:

建立模块:用于将项目模块分别插入所述第一机房服务器、所述第二机房服务器、云端服务器中,并在所述第一机房服务器、所述第二机房服务器、云端服务器建立存储节点;

调用模块,用于当所述云端服务器、所述第一机房服务器以及所述第二机房服务器内的项目模块需要相互调用时,分别获取任意一方服务器的项目模块数据,其中,所述获取任意一方服务器的项目模块数据时,还包括:由第一管理者模块发送管理信息;和或,由第二管理模块发送管理信息;接收所述管理信息的服务器将所述管理信息进行加密并将加密包返回;

处理模块,用于启动项目模块,当项目模块数据运行成功时,接收所述管理信息的服务器将所述管理信息存入自身的存储节点,并将存储动作的信息同步至其他两个服务器,以请求其他两个服务器保存所述管理信息。

本申请还提供了一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述一种项目混合云部署方法的步骤。

本申请还提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述一种项目混合云部署方法的步骤。

本申请的有益效果为:

1、本申请引入云端服务进行架构,解决了本地机房服务器不足的问题,并解决了本地服务与云端服务的模块之间通信问题,以及各模块的地址存储问题;

2、引入多个存储引擎进行数据存储,使用管理者模块进行协调各模块的地址和存储数据问题,结合加密算法进行对服务地址及端口进行加密存储,可以防止他人获取数据,极大降低了数据丢失问题。

附图说明

图1为本申请一实施例的一种项目混合云部署方法的流程示意图。

图2为本申请一实施例的一种项目混合云部署装置的结构框架示意图。

图3为本申请一实施例的计算机设备内部结构示意图。

本申请目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。

具体实施方式

应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。

本申请揭示了一种项目混合云部署方法,包括:

S1:将项目模块分别插入所述第一机房服务器1、所述第二机房服务器2以及云端服务器3中,并在所述第一机房服务器1、所述第二机房服务器2、云端服务器3建立存储节点;

S2:当所述云端服务器3、所述第一机房服务器1以及所述第二机房服务器2内的项目模块需要相互调用时,分别获取任意一方服务器的项目模块数据,其中,所述获取任意一方服务器的项目模块数据时,还包括:由第一管理者模块发送管理信息;和或,由第二管理模块发送管理信息;接收所述管理信息的服务器将所述管理信息进行加密并将加密包返回;

S3:启动项目模块,当项目模块数据运行成功时,接收所述管理信息的服务器将所述管理信息存入自身的存储节点,并将存储动作的信息同步至其他两个服务器,以请求其他两个服务器保存所述管理信息。

在部署阶段,例如,企业自建机房中设有两台服务器:第一本地服务器1和第二本地服务器2;云端设有一台服务器:云端服务器3。项目模块包括A模块、B模块、C模块。将A模块部署到第一本地服务器1中,B模块部署到第二本地服务器2中,C模块部署到云端服务器3中,目前多个模块之间无法通信调用,需要创建或者引用管理者模块和存储节点,第一本地服务器1引入第一管理者模块和第一存储节点,第二本地服务器2引入第二存储节点,云端服务器3引入第二管理者模块和第三存储节点。

当所述云端服务器3、所述第一机房服务器1以及所述第二机房服务器2内的项目模块需要相互调用时,分别获取任意一方服务器的项目模块数据,其中,所述获取任意一方服务器的项目模块数据时,由第一管理者模块发送管理信息;和或,由第二管理模块发送管理信息;接收所述管理信息的服务器将所述管理信息进行加密并将加密包返回。本申请通过建立多个存储节点,可以将数据压力分摊到各个服务器中,在相互调用各个项目模块时能够降低网络延迟压力,另外,在企业机房统一建立一个管理者模块——第一管理者模块,能够将企业机房内多个服务器数据集成化一体,可以随时监控各个服务器的服务状态,便于管理和维护,而且在项目模块数据传输过程中,设立加密和解密过程,能够解决各个服务器之间的通信问题和安全问题。

进一步的,所述当项目模块数据运行成功时,还包括:

S31:建立第一管理者模块和第二管理者模块;

S32:将所述第一本地服务器1、所述第二本地服务器2的项目模块发送至第一管理者模块,将所述云端服务器3的项目模块发送至第二管理者模块;

S33:对所述第一管理者模块和所述第二管理者模块的项目模块数据进行解密,以获取所述第一本地服务器1、所述第二本地服务器2以及云端服务器3的地址信息;

S34:启动任意一项所述第一本地服务器1、所述第二本地服务器2以及云端服务器3的项目模块时;

S35:若任意一项所述第一本地服务器1、所述第二本地服务器2以及云端服务器3的项目模块无法使用,则清空第一本地服务器1、所述第二本地服务器2以及云端服务器3相对应的项目模块数据。

所述管理信息包括第一管理信息、第二管理信息以及第三管理信息。

所述将项目模块分别插入所述第一机房服务器、所述第二机房服务器以及云端服务器中,还包括:

S111:启动所述第一机房服务器1内的项目模块;

S112:所述第一机房服务器1将项目模块数据发送至第一管理者模块上,所述第一管理者模块对项目模块数据进行加密计算,生成第一管理信息;

S113:将第一管理信息保存至所述第一机房服务器1的存储节点。

所述将项目模块分别插入所述第一机房服务器1、所述第二机房服务器2以及云端服务器3中,还包括:

S114:启动所述第二机房服务器2内的项目模块;

S115:所述第二机房服务器2将项目模块数据发送至所述第一管理者模块上,所述第一管理模块对项目模块数据进行加密计算,生成第二管理信息;

S116:将第二管理信息保存至所述第一机房服务器1的存储节点。

所述将项目模块分别插入所述第一机房服务器1、所述第二机房服务器2以及云端服务器3中,还包括:

S117:启动所述云端服务器3内的项目模块;

S118:所述云端服务器3将项目模块数据发送至第二管理模块上,所述第二管理模块对项目模块数据进行加密计算,生成第三管理信息;

S119:将第三管理信息保存至所述第一本地服务器1的存储节点。

根据步骤S114-S119,还包括:

S120:对所述第一机房服务器1的存储节点进行数据更新,触发数据同步至所述第二机房服务器2的存储节点或所述云端服务器3的存储节点上。

对于步骤S111-S120,当所述云端服务器3、所述第一机房服务器1以及所述第二机房服务器2内的项目模块需要相互调用时,分别获取任意一方服务器的项目模块数据,其中,所述获取任意一方服务器的项目模块数据时,还包括:由第一管理者模块发送管理信息;和或,由第二管理模块发送管理信息。例如:当A模块需要调用B模块时,第二本地服务器将B模块的项目模块数据发送至第一管理者模块,第一管理者模块将项目模块数据进行加密运算,生成第一管理信息,第一管理者模块将第一管理者信息发送至A模块。

本发明的一种混合云部署方法,其具体实施如下:

参考图1,所述项目模块包括A模块、B模块、C模块,各个模块在运行时,都先调用管理者模块,将本模块的服务地址发送到各自的管理者模块中,例如A模块将自己的项目模块数据发送到第一管理者模块中,第一管理者模块获取到A模块的项目模块数据,其中,A模块的项目数据包括A模块的服务地址,第一管理者模块对A模块的服务地址进行加密,生成第一管理信息,将第一管理信息发送请求存储到第一存储节点上,B模块将自己的项目模块数据发送到第一管理者模块上,其中,B模块的项目模块数据包括B模块的服务地址,第一管理者模块将B模块的服务地址进行加密,生成第二管理信息,将第二管理信息存储到B模块所在的第二存储节点上进行存储,同理,第二管理者模块将生成的第三管理信息发送到云端服务器3的第三存储节点上。

当项目模块都运行成功,第一存储节点将保存各项目模块数据的服务地址,包括A模块的服务地址、B模块的服务地址以及C模块的服务地址,当第一存储节点接收到请求保存加密后的服务地址后,即第一管理信息、第二管理信息或者第三管理信息,会对第二本地服务器2以及云端服务器3各自存储节点发送请求(依次对应第二存储节点、第三存储节点),使三个存储节点所存储的数据保持一致,当项目的A模块、B模块、C模块各自需要调用其它模块服务时,先调用第一管理者模块或者第二管理者模块,以获取到第一管理信息、第二管理信息或者第三管理信息,再进行调用对应的项目模块(包括A模块、B模块以及C模块)。

当下一次启动各个项目模块时,第一管理者模块和第二管理者模块内均保存有A模块、B模块以及C模块的数据,可以通过对第一管理者模块或者第二管理者模块发起请求,即可调用。本发明的项目模块包括但不止与以上A模块、B模块以及C模块,若有新的模块和本地服务器的加入,可以参考上述部署方案,重复后续的调用步骤即可。

本申请引入云端服务进行架构,解决了本地机房服务器不足的问题,并解决了本地服务与云端服务的模块之间通信问题,以及各模块的地址存储问题;引入多个存储引擎进行数据存储,使用管理者模块进行协调各模块的地址和存储数据问题,结合加密算法进行对服务地址及端口进行加密存储,可以防止他人获取数据,极大降低了数据丢失问题。

参考图2,本申请还揭示了一种项目混合云部署装置,包括:

建立模块100:所述建立模块100用于将项目模块分别插入所述第一机房服务器、所述第二机房服务器、云端服务器中,并在所述第一机房服务器、所述第二机房服务器、云端服务器建立存储节点;

调用模块200,所述调用模块200用于当所述云端服务器、所述第一机房服务器以及所述第二机房服务器内的项目模块需要相互调用时,分别获取任意一方服务器的项目模块数据,其中,所述获取任意一方服务器的项目模块数据时,还包括:由第一管理者模块发送管理信息;和或,由第二管理模块发送管理信息;接收所述管理信息的服务器将所述管理信息进行加密并将加密包返回;

处理模块300,所述处理模块300用于启动项目模块,当项目模块数据运行成功时,接收所述管理信息的服务器将所述管理信息存入自身的存储节点,并将存储动作的信息同步至其他两个服务器,以请求其他两个服务器保存所述管理信息。

本申请的一种项目混合云部署装置,其实施方式可参考上述一种项目混合云部署方法步骤,此处不再重复赘述。

实施例3

如图3所示,本申请还提供了一种计算机设备,该计算机设备可以是服务器,其内部结构可以如图3所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设计的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储一种项目混合云部署方法的过程需要的所有数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种项目混合云部署方法。

本领域技术人员可以理解,图3中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定。

本申请一实施例还提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述任意一种项目混合云部署方法。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储与一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的和实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可以包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM通过多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双速据率SDRAM(SSRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。

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

以上所述仅为本申请的优选实施例,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利保护范围内。

技术分类

06120116336601