一种网页web项目的部署方法及装置与流程

文档序号:18620371发布日期:2019-09-06 22:25阅读:289来源:国知局
一种网页web项目的部署方法及装置与流程

本申请涉及计算机技术领域,特别是涉及一种网页web项目的部署方法及装置。



背景技术:

目前,技术人员通常采用前后端分离的方式进行网页(web)项目的开发和部署,也即,技术人员分别对web项目中的web前端和web后端进行单独的开发和部署。采用上述前后端分离的方式进行web项目的开发和部署,可以保证web前端和web后端的开发、测试、部署和优化相互独立互不影响,从而提高开发效率。

基于上述前后端分离的方式,技术人员在web项目部署时,需要在服务器上分别安装web前端和web后端运行所需要的环境,并分别在各自的环境中部署web前端服务和web后端服务。

然而,对于性能较差的服务器,同时安装两套不同的环境和服务,会严重占用该服务器的资源,导致服务器的稳定性较差。



技术实现要素:

本申请实施例的目的在于提供一种web项目的部署方法及装置,可以提高服务器的稳定性。具体技术方案如下:

第一方面,提供了一种web项目的部署方法,所述web项目包括web前端和第一web后端,所述方法包括:

获取所述web前端中的各目标文件,所述各目标文件中包括配置文件和静态资源文件;

针对所述各目标文件中的每个目标文件,根据该目标文件对应的文件类型和预设的移动规则,确定该目标文件在所述第一web后端中对应的目标文件夹,并将该目标文件移动至所述目标文件夹中;

在移动后的配置文件中修改所述静态资源文件对应的访问路径,得到集成所述web前端的第二web后端;

对所述第二web后端进行部署。

可选的,所述文件类型包括配置类型、编译类型、页面类型、代码类型和静态资源类型。

可选的,所述根据该目标文件对应的文件类型和预设的移动规则,确定该目标文件在所述第一web后端中对应的目标文件夹,并将该目标文件移动至所述目标文件夹中,包括:

当该目标文件的文件类型为所述配置类型或所述编译类型时,确定该目标文件在所述第一web后端中对应的目标文件夹为根目录文件夹,将该目标文件移动至所述第一web后端的根目录文件夹中;

当该目标文件的文件类型为所述页面类型或所述代码类型时,确定该目标文件在所述第一web后端中对应的目标文件夹为根目录文件夹中的web应用文件夹,将该目标文件移动至所述第一web后端的根目录文件夹的web应用文件夹中;

当该目标文件的文件类型为所述静态资源类型时,确定该目标文件在所述第一web后端中对应的目标文件夹为根目录文件夹的资源文件夹的静态文件夹,将该目标文件移动至所述第一web后端的根目录文件夹的资源文件夹的静态文件夹中。

可选的,所述对所述第二web后端进行部署,包括:

对所述第二web后端进行编译打包处理,得到可执行文件;

在所述第一web后端的运行环境中运行所述可执行文件。

第二方面,提供了一种web项目的部署装置,所述web项目包括web前端和第一web后端,所述装置包括:

获取模块,用于获取所述web前端中的各目标文件,所述各目标文件中包括配置文件和静态资源文件;

移动模块,用于针对所述各目标文件中的每个目标文件,根据该目标文件对应的文件类型和预设的移动规则,确定该目标文件在所述第一web后端中对应的目标文件夹,并将该目标文件移动至所述目标文件夹中;

修改模块,用于在移动后的配置文件中修改所述静态资源文件对应的访问路径,得到集成所述web前端的第二web后端;

部署模块,用于对所述第二web后端进行部署。

可选的,所述文件类型包括配置类型、编译类型、页面类型、代码类型和静态资源类型。

可选的,所述移动模块,具体用于:

当该目标文件的文件类型为所述配置类型或所述编译类型时,确定该目标文件在所述第一web后端中对应的目标文件夹为根目录文件夹,将该目标文件移动至所述第一web后端的根目录文件夹中;

当该目标文件的文件类型为所述页面类型或所述代码类型时,确定该目标文件在所述第一web后端中对应的目标文件夹为根目录文件夹中的web应用文件夹,将该目标文件移动至所述第一web后端的根目录文件夹的web应用文件夹中;

当该目标文件的文件类型为所述静态资源类型时,确定该目标文件在所述第一web后端中对应的目标文件夹为根目录文件夹的资源文件夹的静态文件夹,将该目标文件移动至所述第一web后端的根目录文件夹的资源文件夹的静态文件夹中。

可选的,所述部署模块,具体用于:

对所述第二web后端进行编译打包处理,得到可执行文件;

在所述第一web后端的运行环境中运行所述可执行文件。

第三方面,提供了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;

存储器,用于存放计算机程序;

处理器,用于执行存储器上所存放的程序时,实现第一方面任一所述的方法步骤。

第四方面,提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现第一方面任一所述的方法步骤。

第五方面,提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述第一方面任一所述的方法。

本申请实施例提供的一种web项目的部署方法及装置,服务器获取web前端中的各目标文件。其中,各目标文件中包括配置文件和静态资源文件。然后,针对各目标文件中的每个目标文件,服务器根据该目标文件对应的文件类型和预设的移动规则,确定该目标文件在第一web后端中对应的目标文件夹,将该目标文件移动至目标文件夹中,并在移动后的配置文件中修改静态资源文件对应的访问路径,得到集成web前端的第二web后端。之后,服务器对第二web后端进行部署。这样,服务器在对web项目进行部署时,通过将web前端中的目标文件整合至web后端中进行统一的部署,仅需要在服务器中安装web后端运行所需的环境并在该环境中安装web后端服务,从而减少了服务器中环境和服务的数量,降低了服务器中环境和服务对资源的占用,提高了服务器的稳定性。

当然,实施本申请的任一产品或方法并不一定需要同时达到以上所述的所有优点。

附图说明

为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍。

图1为本申请实施例提供的一种web项目的部署方法的流程图;

图2为本申请实施例提供的一种web项目的部署装置的结构示意图;

图3为本申请实施例提供的一种电子设备的结构示意图。

具体实施方式

下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。

本申请实施例提供了一种web项目的部署方法,可以应用于web系统。具体的,该方法可以应用于web系统中用于部署web项目的服务器。其中,web项目可以包括web前端和web后端。web前端可以为vue框架,也可以为react框架,还可以为其他类型的框架;web后端可以为springboot框架,还可以为其他类型的框架,本申请实施例不作限定。其中,vue框架是一套用于构建用户界面的渐进式框架,与其它大型框架不同的是,vue框架被设计为可以自底向上逐层应用。另外,springboot框架是为了简化springweb开发设计的一个全新框架,和传统的框架相比,减少了很多配置、增加了开发效率。vue框架和springboot框架都是已有框架,这里不再赘述。

下面将结合具体实施方式,对本申请实施例提供的一种web项目的部署方法进行详细的说明,其中,该web项目包括web前端和第一web后端,如图1所示,具体步骤如下:

步骤101,获取web前端中的各目标文件。

其中,各目标文件中至少包括配置文件和静态资源文件。

在实施中,当服务器需要对web项目进行部署时,为了减少web项目对服务器资源的占用,服务器可以将web前端集成至第一web后端中,进行统一的部署。因此,服务器可以在web前端中,获取待集成的文件(即目标文件)。其中,各目标文件中至少包括配置文件和静态资源文件,还可以包括其他文件。

步骤102,针对各目标文件中的每个目标文件,根据该目标文件对应的文件类型和预设的移动规则,确定该目标文件在第一web后端中对应的目标文件夹,并将该目标文件移动至目标文件夹中。

在实施中,服务器中可以预先存储有移动规则,该移动规则可以为web前端中各文件的文件类型与第一web后端中文件夹的对应关系。该移动规则可以由技术人员根据web前端和web后端的框架类型进行设置。其中,技术人员可以基于如下原则设置该移动规则:(1)保证web前端和第一web后端的文件单独存储,以便于开发人员分别对web前端和第一web后端进行独立迭代开发和代码仓库管理;(2)不影响web前端和第一web后端的编译工具对各自代码文件的调用,以保证web前端和第一web后端中的代码文件可以正常编译;(3)方便部署。

服务器获取到web前端中的各目标文件后,针对各目标文件中的每个目标文件,服务器可以根据该目标文件对应的文件类型和预设的移动规则,确定该目标文件在第一web后端中对应的目标文件夹。然后,服务器可以将该目标文件移动至目标文件夹中。

可选的,web前端中目标文件对应的文件类型可以包括配置类型、编译类型、页面类型、代码类型和静态资源类型。对于不同框架类型的web前端,该web前端中目标文件对应的文件类型也并不相同,因此,本申请实施例对web前端中目标文件对应的文件类型不作限定。

可选的,根据web前端和第一web后端框架类型的不同,服务器中设置的移动规则也可以不同。本申请实施例提供了一种可行的实施方式,处理过程为当该目标文件的文件类型为配置类型或编译类型时,服务器可以确定该目标文件在第一web后端中对应的目标文件夹为根目录文件夹,将该目标文件移动至第一web后端的根目录文件夹中。当该目标文件的文件类型为页面类型或代码类型时,服务器可以确定该目标文件在第一web后端中对应的目标文件夹为根目录文件夹中的web应用文件夹,将该目标文件移动至第一web后端的根目录文件夹的web应用文件夹中。当该目标文件的文件类型为静态资源类型时,服务器可以确定该目标文件在第一web后端中对应的目标文件夹为根目录文件夹的资源文件夹的静态文件夹,将该目标文件移动至第一web后端的根目录文件夹的资源文件夹的静态文件夹中。

例如,假设web前端为vue框架,web后端为springboot框架,则服务器可以将vue框架中的编译文件和配置文件移动至springboot框架的根目录文件夹中,即与springboot框架的src文件夹、pom文件同处于根目录文件夹中。服务器可以将vue框架中的页面文件、代码文件移动至springboot框架的根目录文件的web应用(即webapp)文件夹中,服务器可以将vue框架中的静态资源文件移动至springboot框架的根目录文件夹的资源(即recourse)文件夹的静态(即static)文件中。

需要说明的是,技术人员可以通过修改webpack相关的配置文件,实现web前端的目标文件自动移动至第一web后端的目标文件夹的功能。

步骤103,在移动后的配置文件中修改静态资源文件对应的访问路径,得到集成web前端的第二web后端。

在实施中,服务器将web前端中的目标文件移动至第一web后端中的目标文件夹后,为了保证web前端中移动后的某些目标文件(比如页面文件、代码文件)可以正确调用静态资源文件,服务器可以进一步在移动后的配置文件中修改静态资源文件对应的访问路径。也即,对于移动后的配置文件中静态资源文件,服务器可以将配置文件中的原始访问路径修改为第一web后端中存储该移动后的静态资源文件的文件夹对应的存储路径。

步骤104,对第二web后端进行部署。

在实施中,服务器得到集成web前端的第二web后端后,可以对该第二web后端进行部署。这样,技术人员仅需要在服务器中安装web后端运行所需的环境并在该环境中运行web后端服务,从而减少了服务器中环境和服务的数量,降低了服务器中环境和服务对服务器资源的占用,提高了服务器的稳定性。

可选的,服务器对第二web后端进行部署的处理过程为:对第二web后端进行编译打包处理,得到可执行文件,在第一web后端的运行环境中运行可执行文件。

在实施中,服务器中可以预先安装有第一web后端的运行环境。服务器得到集成web前端的第二web后端后,可以启动第二web后端中的编译打包程序,对第二web后端进行编译打包处理,得到可执行文件。然后,服务器可以在第一web后端的运行环境中运行可执行文件,以提供web服务。

本申请实施例中,服务器获取web前端中的各目标文件。其中,各目标文件中包括配置文件和静态资源文件。然后,针对各目标文件中的每个目标文件,服务器根据该目标文件对应的文件类型和预设的移动规则,确定该目标文件在第一web后端中对应的目标文件夹,将该目标文件移动至目标文件夹中,并在移动后的配置文件中修改静态资源文件对应的访问路径,得到集成web前端的第二web后端。之后,服务器对第二web后端进行部署。这样,服务器在对web项目进行部署时,通过将web前端中的目标文件整合至web后端中进行统一的部署,仅需要在服务器中安装web后端运行所需的环境并在该环境中安装web后端服务,从而减少了服务器中环境和服务的数量,降低了服务器中环境和服务对资源的占用,提高了服务器的稳定性。

基于相同的技术构思,本申请实施例还提供了一种web项目的部署装置,如图2所示,该装置包括:

获取模块210,用于获取web前端中的各目标文件,各目标文件中包括配置文件和静态资源文件;

移动模块220,用于针对各目标文件中的每个目标文件,根据该目标文件对应的文件类型和预设的移动规则,确定该目标文件在第一web后端中对应的目标文件夹,并将该目标文件移动至目标文件夹中;

修改模块230,用于在移动后的配置文件中修改静态资源文件对应的访问路径,得到集成web前端的第二web后端;

部署模块240,用于对第二web后端进行部署。

可选的,文件类型包括配置类型、编译类型、页面类型、代码类型和静态资源类型。

可选的,移动模块220,具体用于:

当该目标文件的文件类型为所述配置类型或所述编译类型时,确定该目标文件在所述第一web后端中对应的目标文件夹为根目录文件夹,将该目标文件移动至所述第一web后端的根目录文件夹中;

当该目标文件的文件类型为所述页面类型或所述代码类型时,确定该目标文件在所述第一web后端中对应的目标文件夹为根目录文件夹中的web应用文件夹,将该目标文件移动至所述第一web后端的根目录文件夹的web应用文件夹中;

当该目标文件的文件类型为所述静态资源类型时,确定该目标文件在所述第一web后端中对应的目标文件夹为根目录文件夹的资源文件夹的静态文件夹,将该目标文件移动至所述第一web后端的根目录文件夹的资源文件夹的静态文件夹中。

可选的,部署模块240,具体用于:

对第二web后端进行编译打包处理,得到可执行文件;

在第一web后端的运行环境中运行可执行文件。

本申请实施例中,服务器获取web前端中的各目标文件。其中,各目标文件中包括配置文件和静态资源文件。然后,针对各目标文件中的每个目标文件,服务器根据该目标文件对应的文件类型和预设的移动规则,确定该目标文件在第一web后端中对应的目标文件夹,将该目标文件移动至目标文件夹中,并在移动后的配置文件中修改静态资源文件对应的访问路径,得到集成web前端的第二web后端。之后,服务器对第二web后端进行部署。这样,服务器在对web项目进行部署时,通过将web前端中的目标文件整合至web后端中进行统一的部署,仅需要在服务器中安装web后端运行所需的环境并在该环境中安装web后端服务,从而减少了服务器中环境和服务的数量,降低了服务器中环境和服务对资源的占用,提高了服务器的稳定性。

基于相同的技术构思,本申请实施例还提供了一种电子设备,如图3所示,包括处理器301、通信接口302、存储器303和通信总线304,其中,处理器301,通信接口302,存储器303通过通信总线304完成相互间的通信,

存储器303,用于存放计算机程序;

处理器301,用于执行存储器303上所存放的程序时,实现如下步骤:

获取所述web前端中的各目标文件,所述各目标文件中包括配置文件和静态资源文件;

针对所述各目标文件中的每个目标文件,根据该目标文件对应的文件类型和预设的移动规则,确定该目标文件在所述第一web后端中对应的目标文件夹,并将该目标文件移动至所述目标文件夹中;

在移动后的配置文件中修改所述静态资源文件对应的访问路径,得到集成所述web前端的第二web后端;

对所述第二web后端进行部署。

可选的,所述文件类型包括配置类型、编译类型、页面类型、代码类型和静态资源类型。

可选的,所述针对所述各目标文件中的每个目标文件,根据该目标文件对应的文件类型和预设的移动规则,确定该目标文件在所述第一web后端中对应的目标文件夹,并将该目标文件移动至所述目标文件夹中,包括:

当该目标文件的文件类型为所述配置类型或所述编译类型时,确定该目标文件在所述第一web后端中对应的目标文件夹为根目录文件夹,将该目标文件移动至所述第一web后端的根目录文件夹中;

当该目标文件的文件类型为所述页面类型或所述代码类型时,确定该目标文件在所述第一web后端中对应的目标文件夹为根目录文件夹中的web应用文件夹,将该目标文件移动至所述第一web后端的根目录文件夹的web应用文件夹中;

当该目标文件的文件类型为所述静态资源类型时,确定该目标文件在所述第一web后端中对应的目标文件夹为根目录文件夹的资源文件夹的静态文件夹,将该目标文件移动至所述第一web后端的根目录文件夹的资源文件夹的静态文件夹中。

可选的,所述对所述第二web后端进行部署,包括:

对所述第二web后端进行编译打包处理,得到可执行文件;

在所述第一web后端的运行环境中运行所述可执行文件。

上述电子设备提到的通信总线可以是外设部件互连标准(英文:peripheralcomponentinterconnect,简称:pci)总线或扩展工业标准结构(英文:extendedindustrystandardarchitecture,简称:eisa)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。

通信接口用于上述电子设备与其他设备之间的通信。

存储器可以包括随机存取存储器(英文:randomaccessmemory,简称:ram),也可以包括非易失性存储器(英文:non-volatilememory,简称:nvm),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。

上述的处理器可以是通用处理器,包括中央处理器(英文:centralprocessingunit,简称:cpu)、网络处理器(英文:networkprocessor,简称:np)等;还可以是数字信号处理器(英文:digitalsignalprocessing,简称:dsp)、专用集成电路(英文:applicationspecificintegratedcircuit,简称:asic)、现场可编程门阵列(英文:field-programmablegatearray,简称:fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。

基于相同的技术构思,本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述的web项目的部署方法步骤。

基于相同的技术构思,本申请实施例还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述的web项目的部署方法。

在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(dsl))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,dvd)、或者半导体介质(例如固态硬盘solidstatedisk(ssd))等。

需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

以上所述仅为本申请的较佳实施例而已,并非用于限定本申请的保护范围。凡在本申请的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本申请的保护范围内。

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