一种分布式应用系统的开发环境搭建的方法和装置与流程

文档序号:11594475阅读:167来源:国知局
一种分布式应用系统的开发环境搭建的方法和装置与流程
本申请涉及分布式系统的技术领域,特别是涉及一种分布式应用系统的开发环境搭建的方法,以及,一种分布式应用系统的开发环境搭建的装置。

背景技术:
分布式应用系统是一种重要的计算机应用系统,作用广泛而巨大。分布式应用系统是将应用程序逻辑分布到网络上的两台或者多台计算机上来实现的系统。它对用户看起来像集中的单机系统,而实际是由多个相互连接的处理资源组成的计算系统,它们在整个系统的控制下可合作执行共同的任务,其中的处理资源可以是物理上相邻的,也可以是分布的。例如,通过分布式应用系统进行分布式计算可以把一个需要非常巨大的计算能力才能解决的问题分成许多小的部分,然后把这些部分分配给许多计算机进行处理,最后把这些计算结果综合起来得到最终的结果。在已有软硬件环境条件下,大规模分布式多系统并行软件开发团队中,将代码下载(包括本机和服务器)、系统编译、依赖类库下载、配置修改、应用启动等操作有机地结合在一起,在各个物理上或逻辑上独立的服务器节点上部署分布式应用,使各系统协同工作,对外提供服务。在分布式应用系统并行软件开发时,需要对分布式应用系统中的各个系统之间的具体服务器的调用路径和返回路径进行设置,修改配置文件,修改数据库的配置等,这些称为分布式应用系统的环境搭建。但是在大规模分布式多系统并行软件开发团队中,环境搭建是个很容易出问题的过程,因为这种模式存在以下缺点:(1)每个系统有多台服务器,需要将指定服务器接入目标系统。由于多个团队并行开发的特点,每个系统都可能有多台服务器,而各开发团队工作需要彼此隔离,避免互相影响,每个团队都有一套环境,因此需要将某系统指定的服务器接入开发环境,使其可以正常调用和接收回执。(2)配置多样、灵活、难以掌握。配置可能以文件的形式存储在应用服务器上,也可能以记录的形式存储在数据库中;配置的指定根据要求而变化。(3)搭建过程出现问题难以排查。由于一套环境系统众多,配置文件、数据库配置项繁多,手工搭建出现问题的概率很大,并且难以排查。(4)本地开发环境、分布式开发整个搭建过程繁琐、复杂。造成开发环境搭建配置复杂的一个重要原因在于:生产环境的分布式系统是集群到集群的调用,不需要明确指定被调用和回执到的具体机器,而开发环境绝大多数情况是指定机器到指定机器的调用,需要准确指定被调用和回执到的具体机器。在实际中分布式系统的环境搭建主要是人工完成,由于上述的特点造成人工搭建的配置流程非常复杂,手工搭建容易出错,并且很难排查。因此本领域技术人员急需解决的问题是:提出一种自动化的分布式应用系统的开发环境搭建的机制,用以简化分布式应用系统环境搭建过程,降低出错率,并提高排查的效率和准确性。

技术实现要素:
本申请的目的是提供一种分布式应用系统的开发环境搭建的方法,用以简化分布式应用系统环境搭建过程,降低出错率,并提高排查的效率和准确性。本申请还提供了一种分布式应用系统的开发环境搭建的装置,用以保证上述方法在实际中的应用及实现。为了解决上述问题,本申请公开了一种分布式应用系统的开发环境搭建方法,具体可以包括:构建至少两个子系统,各子系统为相同功能的服务器构建而成;根据当前应用所涉及的功能,配置相应子系统中指定服务器之间的调用路径信息;根据所述相应子系统中指定服务器之间的调用路径信息,生成指定服务器之间的调用路径。优选的是,所述根据相应子系统中指定服务器之间的调用路径信息,生成指定服务器之间的调用路径的步骤可以包括:在任一所述子系统的服务器中预置调用路径信息文件;从所述预置的调用路径信息文件中,下载所述相应子系统中指定服务器之间的调用路径信息。优选的是,所述预置的调用路径信息中可以包括文件配置信息列表和数据库配置信息列表。优选的是,所述的方法,还包括:检测所述调用路径信息;若发现异常信息,则修改所述调用路径信息;各服务器根据所述修改的调用路径信息,记录与自身相关的调用路径信息,生成新的文件配置列表,和/或数据库配置列表。优选的是,所述修改预置的调用路径信息的步骤可以包括:获取标准版本文件配置信息列表和标准版本数据库配置信息列表;将获取所述标准版本文件配置信息列表与所述预置的调用路径信息文件中的文件配置信息列表进行对比,将所述预置的调用路径信息文件中的文件配置信息列表中的差异之处,按所述标准版本文件配置信息列表中的对应信息进行修改;将所述标准版本数据库配置信息列表与所述预置的调用路径信息文件中的数据库配置信息列表进行对比,将所述预置的调用路径信息文件中的数据库配置信息列表中的差异之处,按所述标准版本数据库配置信息列表中的对应信息进行修改。本申请还公开一种分布式应用系统的开发环境搭建的装置,具体可以包括:子系统构建模块,用于构建至少两个子系统,各子系统为相同功能的服务器构建而成;调用路径信息生成模块,用于根据当前应用所涉及的功能,配置相应子系统中指定服务器之间的调用路径信息;调用路径配置模块,用于根据所述相应子系统中指定服务器之间的调用路径信息,生成指定服务器之间的调用路径。优选的是,所述调用路径配置模块可以包括:信息预设子模块,用于在任一所述子系统的服务器中预置调用路径信息文件;信息下载子模块,用于从所述预置的调用路径信息文件中,下载所述相应子系统中指定服务器之间的条用路径信息。优选的是,所述预置的调用路径信息文件中可以包括文件信息配置列表和数据库信息配置列表。优选的是,所述装置,还包括:配置文件检测模块,用于检测所述本机开发环境的配置文件;配置文件修改模块,用于若发现异常信息,则修改所述配置文件;列表生成模块,用于各服务器根据所述修改的配置文件,记录与自身相关的调用路径信息,生成调用路径信息列表。优选的是,所述配置文件修改模块可以进一步包括:标准列表获取子模块,用于获取标准版本文件信息配置列表和标准版本数据库信息配置列表;配置列表修改子模块,用于将获取所述标准版本文件信息配置列表与所述配置文件中的文件调用信息配置列表进行对比,将所述配置文件中的文件信息配置列表中的差异之处,按所述标准版本文件信息配置列表中的对应信息进行修改;数据库列表修改子模块,用于将所述标准版本数据库信息配置列表与所述配置文件中的数据库信息配置列表进行对比,将所述配置文件中的数据库信息配置列表中的差异之处,按所述标准版本数据库信息配置列表中的对应信息进行修改。与现有技术相比,本申请具有以下优点:本申请通过构建子系统环境,在各子系统环境中配置生成各子系统之间指定服务器的调用路径,从而满足开发环境中需要准确指定被调用和回执到的具体机器的需求。这种自动搭建分布式应用系统的开发环境的方式无需相关技术人员参与,从而简化了分布式应用系统环境搭建。并且,本申请还可以对于搭建过程出现的问题自行排查,从而可以降低出错率,提高排查的效率和准确性。附图说明图1是本申请的一种分布式应用系统的开发环境搭建方法实施例1的步骤流程图;图2是本申请的一种分布式应用系统的开发环境搭建方法实施例2的步骤流程图;图3是一个分布式应用系统示例的结构图;图4是本申请的一种分布式应用系统的开发环境搭建装置实施例1的结构框图;图5是本申请的一种分布式应用系统的开发环境搭建装置实施例2的结构框图。具体实施方式为使本申请的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本申请作进一步详细的说明。本申请的核心构思是:现有技术在搭建分布式应用系统的开发环境时,都是人工搭建,特别是对具体服务器与具体服务器的调用路径信息配置,及对信息配置后的检查都是人工来做的。这样不仅耗费大量精力和时间,出错率也很高。本申请通过构建子系统环境,在各子系统环境中配置生成各子系统之间指定服务器的调用路径,从而满足开发环境中需要准确指定被调用和回执到的具体机器的需求,同时简化了分布式应用系统环境搭建过程。参照图1,其示出了本申请的一种分布式应用系统的开发环境搭建方法实施例1的步骤流程图,具体可以包括以下步骤:步骤101、构建至少两个子系统,各子系统为相同功能的服务器构建而成;由于每个分布式应用系统有多台服务器,需要将指定服务器接入目标系统,既是子系统中。并且因为多个团队并行开发的特点,每个子系统都可能有多台服务器,因为开发人员开发项目的软件版本可能不同,所以各开发团队工作需要彼此隔离,避免互相影响,每个团队都有一套环境,因此需要将某系统指定的服务器接入开发环境,使其可以正常调用和接收回执。所述子系统是本申请中为分布式应用系统开发环境提供某一功能的服务器的集合,是整个分布式应用系统中的重要要素。在本申请实施例中,构建子系统是通过将提供同样功能任务的服务器用网络连接。在具体实现中,一个子系统中有若干服务器,这些服务器对于所述的分布式应用开发环境的工作提供同类功能,但各服务器中应用软件的版本不一样,在不同的分布式应用系统开发环境搭建中,就要在对应子系统中选择软件版本对应的服务器。例如,有子系统x1和x2,子系统x1中有服务器a1和b1,子系统x2中有服务器a2和b2,服务器a1和b1中的应用软件版本是对应的,那么在子系统x1中服务器a1与子系统x2中服务器搭建调用路径时,选择与服务器b1搭建调用路径。步骤102、根据当前应用所涉及的功能,配置相应子系统中指定服务器之间的调用路径信息;分布式应用系统开发环境的运行,会运用到许多功能,例如:检索,存储,数据交换等等功能,因而分别由专门的服务器提供一种功能,如前所述,提供同一功能的服务器组合成为一个子系统,一个分布式应用系统中通常会有多个子系统。所述的子系统中指定服务器之间的调用路径信息,是指不同子系统中不同服务器之间的调用路径信息,由于子系统是同一功能的服务器的组合,调用路径是需要在不同子系统之间搭建的。需要说明的是,在本申请实施例中,所述调用路径是指功能的获取和返回路径。例如,当前一个分布式应用系统提供浏览页面的服务器a需要调用检索功能服务器b的检索功能,找到存储功能服务器c中的数据。因而这个应用所需的调用路径为服务器a调用服务器b的功能,调用服务器c的数据信息;服务器c返回数据信息给服务器b,再由服务器b返回给服务器a。步骤103、根据所述相应子系统中指定服务器之间的调用路径信息配置服务器调用路径。在本申请的一种优选实施例中,所述步骤103可以进一步包括以下子步骤:子步骤S11、在任一所述子系统的服务器中预置调用路径信息文件;在具体实现中,开发人员根据需要预置服务器的调用规则,这个工作可以在任意服务器上进行。开发人员根据自己开发所基于的应用软件版本,选择出不同子系统中对应版本的服务器,只要将所需要的服务器记录并发出以这些服务器搭建路径即可。开发人员主要将根据开发需要制定的,分布式应用系统的子系统中各服务器调用路径源信息编写成代码,再将代码上传到个分布式应用系统的网络中,让各子系统中各服务器去下载。子步骤S12、从所述预置的调用路径信息文件中,下载所述相应子系统中指定服务器之间的调用路径信息;依赖类库是本申请中开发软件运行时所需要依赖的一些第三方程序的集合,不同的开发应用通过连接指定网络位置,即可以找到对应的所需要的类库,从中下载所需依赖的程序。例如:现在共有9台服务器,分别是A1、A2、A3、B1、B2、B3、C1、C2、C3。将A1、A2和A3,B1、B2和B3,C1、C2和C3,每三台分别构建成一个子系统,分别为X1、X2和X3系统中的服务器提供同一功能,单服务器的版本不同,子系统之间相互连接。在本机开发环境中,根据自己开发所基于的版本,选择出不同子系统中对应版本的服务器。其中A1、B2和C2为同一版本的服务器。在本地开发环境中,记录并发出服务器A1、B2和C2搭建路径的信息。把服务器A1、B2和C2搭建路径的信息配置到服务器A1、B2和C2中,并保存记录,依照配置完成的信息启动服务器。参照图2,示出了本申请的一种分布式应用系统的开发环境搭建方法实施例2的步骤流程图,具体可以包括以下步骤:步骤201、构建至少两个子系统,各子系统为相同功能的服务器构建而成;步骤202、根据当前应用所涉及的功能,预置相应单系统中指定服务器之间的调用路径信息;步骤203、根据所述相应子系统中指定服务器之间的调用路径信息配置服务器调用路径。步骤204、检测所述子系统中服务器的配置文件;若发现异常信息,则执行步骤205;在具体实现中,所述配置文件和数据库配置可以包括服务器之间的调用信息。步骤205、修改所述配置文件和数据库配置;在本申请一种优选实施例中,所述步骤205可以进一步包括如下子步骤:子步骤S21、获取标准版本文件信息配置列表和标准版本数据库信息配置列表;子步骤S22、将所述标准版本文件信息配置列表与所述配置文件中的文件信息配置列表进行对比,将所述配置文件中的文件信息配置列表中的差异之处,按所述标准版本文件信息配置列表中的对应信息进行修改;子步骤S23、将所述标准版本数据库信息配置列表与所述配置文件中的数据库信息配置列表进行对比,将所述配置文件中的数据库信息配置列表中的差异之处,按所述标准版本数据库信息配置列表中的对应信息进行修改。步骤206、各服务器根据所述配置文件,记录与自身相关的调用路径信息,生成文件列表和数据库列表。为了方便本领域技术人员更好地理解本申请,以下结合图3所示的一个分布式应用系统结构图,通过一个完整示例更进一步说明本申请:分布式应用系统需要很多子系统的协调工作,构建若干子系统(记为:A系统、B系统等)在图中用圆角矩形代表。每个子系统又包括很多的机器(如:A系统有SystemA-1、SystemA-2等)在图中用圆代表。现要搭建两个分布式应用系统开发环境X1和X2,在用于配置的子系统服务器中记录并发送所需服务器调用路径的信息。上面参与搭建路径的服务器,下载预置的分布式应用系统开发环境X1和X2的服务器调用路径的信息。并根据下载的服务器调用路径的信息,下载辅助的依赖类库,编译下载的服务器调用路径的信息,生成对应服务器调用路径的信息的文件信息配置列表,和数据库信息配置列表。将对应服务器调用路径的信息的文件信息配置列表,和数据库信息配置列表配置到对应的服务器。从包含有服务器基本调用路径信息的标准版分布式应用系统,提取标准版文件信息配置列表和数据库信息配置列表;将标准版文件信息配置列表和数据库信息配置列表,与对应服务器配置的文件信息配置列表和数据库信息配置列表进行比对,发现列表中有异常的信息,将异常信息按照标准版文件信息配置列表和数据库信息配置列表中的信息修改,生成新的对应服务器配置的文件信息配置列表和数据库信息配置列表,重新配置到对应的服务器。将新对应服务器配置的文件信息配置列表和数据库信息配置列表持久化,并按照配置启动服务器,得到分布式应用系统开发环境X1的服务器调用路径为SystemA-1调用SystemB-2,SystemB-2可以调用SystemC-3,SystemC-3必须调用SystemD-2;另一分布式应用系统开发环境X2的服务器调用路径为SystemA-1必须调用SystemE-2,SystemE-2必须调用SystemF-1,SystemF-1必须调用SystemG-3。在具体实现中,系统中每一个服务器的配置、检测,和子系统的构建都可以分别分配一个线程来完成。需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本申请所必须的。参照图4,其示出了本申请的一种分布式应用系统的开发环境搭建的装置实施例1的结构框图,具体可以包括以下模块:子系统构建模块301,用于构建至少两个子系统,各子系统为相同功能的服务器构建而成;调用路径信息生成模块302,用于根据当前应用所涉及的功能,配置相应子系统中指定服务器之间的调用路径信息;调用路径配置模块303,用于根据所述相应子系统中指定服务器之间的调用路径信息,生成指定服务器之间的调用路径。在本申请的一种优选实施例中,所述路径配置模块303可以包括以下子模块:路径信息下载子模块,用于根据所述本机开发环境生成的子系统中指定服务器之间的调用路径信息,下载所述相应子系统中指定服务器之间的调用路径信息;数据库信息下载子模块,用于根据所述本机开发环境生成的子系统中指定服务器之间的调用路径信息,下载对应所述相应子系统中指定服务器之间的调用路径信息的依赖类库;调用路径信息编译子模块,用于根据所述相应子系统中指定服务器之间的调用路径信息,和所述对应相应子系统中指定服务器之间的调用路径信息的依赖类库,编译所述相应子系统中指定服务器之间的调用路径信息;调用路径信息配置子模块,用于根据所述相应子系统中指定服务器之间的调用路径信息,配置所述编译后的相应子系统中指定服务器之间调用路径信息,并启动。在本申请的一种优选实施例中,所述调用路径信息配置子模块可以进一步包括:文件列表配置单元,用于根据所述编译后的相应子系统中指定服务器之间的调用路径信息配置文件信息配置列表;数据库列表配置单元,用于根据所述编译后的相应子系统中指定服务器之间的调用路径信息配置数据库信息配置列表。由于图4所示的装置实施例相应于前述图1所示的方法实施例,故本实施例的描述中未详尽之处,可以参见前述实施例中的相关说明,在此就不赘述了。参照图5,其示出了本申请的一种分布式应用系统的开发环境搭建的装置实施例2的结构框图,具体可以包括以下模块:子系统构建模块401,用于构建至少两个子系统,各子系统为相同功能的服务器构建而成;调用路径信息生成模块402,用于根据当前应用所涉及的功能,配置相应子系统中指定服务器之间的调用路径信息;调用路径配置模块403,用于根据所述相应子系统中指定服务器之间的调用路径信息,生成指定服务器之间的调用路径;配置文件检测模块404,用于检测所述本机开发环境的配置文件;配置文件修改模块405,用于若发现异常信息,则修改所述配置文件;列表生成模块406,用于各服务器根据所述修改的配置文件,记录与自身相关的调用路径信息,生成调用路径信息列表。在本申请的一种优选实施例中,所述信息修改模块405可以包括以下子模块:标准列表获取子模块,用于获取标准版本文件配置信息列表和标准版本数据库配置信息列表;文件列表修改子模块,用于将获取所述标准版本文件配置信息列表与所述配置文件中的文件配置信息列表进行对比,将所述配置文件中的文件配置信息列表中的差异之处,按所述标准版本文件配置信息列表中的对应信息进行修改;数据库列表修改子模块,用于将所述标准版本数据库配置信息列表与所述配置文件中的数据库配置信息列表进行对比,将所述配置文件中的数据库配置信息列表中的差异之处,按所述标准版本数据库配置信息列表中的对应信息进行修改。由于图5所示的装置实施例相应于前述图2所示的方法实施例,故本实施例的描述中未详尽之处,可以参见前述实施例中的相关说明,在此就不赘述了。本申请可用于众多通用或专用的计算系统环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器系统、基于微处理器的系统、置顶盒、可编程的消费电子设备、网络PC、小型计算机、大型计算机、包括以上任何系统或设备的分布式计算环境等等。本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。以上对本申请所提供的一种分布式应用系统的开发环境搭建的方法,以及,一种分布式应用系统的开发环境搭建的装置进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1