一种基于分布式网络的程序部署方法和系统的制作方法

文档序号:6564660阅读:165来源:国知局
专利名称:一种基于分布式网络的程序部署方法和系统的制作方法
技术领域
本发明涉及网络通信技术,尤其是涉及一种基于分布式网络的程序部署方法和系统。
背景技术
随着信息技术的不断发展,越来越多的组织和机构选择多级分布式网络作为其核心的计算机系统。如图1所示,是一家银行所使用网络的拓扑结构示意图。其中,M1是总行使用的根服务器;M21和M22为两个分行使用的子服务器,M301和M302为与M21相连的两个用户终端,并与M21构成一个局域网;M1和M21、M22之间通过网络连接。图1示出的仅仅是最简单的一种结构示意图,在实际运行环境中,诸如M21和M301的服务器和终端会有多个。在这样的网络体系中,由于终端节点数量众多,并且地理上分布较广,因此,为了保证数据和规则的一致性,各终端节点上运行的应用程序通常由根服务器统一提供。同时,为了适应业务的发展,对于已发布的应用程序,还必须对其做进一步改进和升级,发布该程序新的版本。
目前,各终端节点为了获取应用程序或者新的程序版本,首先由用户通过终端向根服务器发送下载请求,根服务器收到请求后将相应的文件发送至终端。但是,对于像银行这样的大型企业或机构来说,其网络分布范围非常广泛,甚至遍及全国,在整个网络中,终端的数量更是多到几千台甚至几万台。由于终端需要用户干预发送下载请求,不但需要耗费大量的人力,而且不同用户发送下载请求的时间很难做到一致,因此导致终端上运行程序的版本不一致。
终端获取应用程序的另一种方式是在各个终端上设置升级程序,该升级程序中设有计时器,当计时器到达预定时间后,由升级程序向根服务器发送下载请求。采用这种方式,由于升级程序并不知道根服务器何时会发布新的程序版本,因此,升级程序需要定期的向根服务器发送查询请求,其中的大多数将因为是无效请求而被服务器拒绝,这样,不但浪费了大量的网络资源,也会对服务器造成沉重的负担;而且,一旦某个终端上的升级程序出现故障,该终端将无法发送下载请求,也无法获得新的程序版本,而对此异常,外界也无法及时获知,造成终端使用的程序版本不一致,由此,会进一步造成业务数据的不一致,给该企业带来非常严重的数据风险。

发明内容
本发明的目的是提供一种基于分布式网络的程序部署方法和系统,以解决现有技术由于采用由终端向服务器请求获取程序导致的程序版本不一致的问题。
为解决上述问题,本发明公开了一种基于分布式网络的程序部署方法,包括在发布节点中预置目标节点配置表,所述目标节点配置表包括该目标节点的位置信息以及可接收程序的属性信息;查询所述目标节点配置表,获取与发布程序属性信息相匹配的目标节点位置信息;将发布程序发送至与所述位置信息相应的节点;目标节点接收所述发布程序并发送反馈信息;在传输状态表中设置与该目标节点相应的传输状态标志。
优选的,所述传输状态表存储在发布节点中;发布节点将发布程序发送至目标节点后,在传输状态表中设置与该目标节点相应的传输状态标志;发布节点收到目标节点发送的反馈信息后,更新传输状态表中该目标节点相应的传输状态标志。
优选的,目标节点更新后,将该节点位置信息和更新后程序的属性信息发送至发布节点;将更新后的目标节点位置信息和程序属性信息作为监控信息存储在节点监控表中。
优选的,定期扫描目标节点,获取目标节点位置信息以及该节点当前程序的属性信息。
其中,所述发布程序属性信息包括该程序的产品标识;所述获取目标节点位置信息是通过查询目标节点配置表,获取与所述发布程序产品标识相匹配的目标节点位置信息。
其中,所述发布程序属性信息还包括该程序的版本标识。
为解决上述问题,本发明还公开了一种基于分布式网络的程序部署方法,包括发布节点和目标节点通过代理节点相连;在发布节点中预置代理节点配置表,所述代理节点配置表包括该节点的位置信息以及该节点可接收程序的属性信息;查询所述代理节点配置表,获取与发布程序属性信息相匹配的代理节点位置信息;发布节点将发布程序发送至相应的代理节点;所述代理节点中预置目标节点配置表,所述目标节点配置表包括该节点的位置信息以及该节点可接收程序的属性信息;查询所述目标节点配置表,获取与发布程序属性信息相匹配的目标节点位置信息;代理节点将收到的发布程序发送至相应的目标节点。
目标节点接收所述发布程序并发送反馈信息;在传输状态表中设置与该目标节点相应的传输状态标志。
优选的,代理节点接收所述发布程序并发送反馈信息;在传输状态表中设置与该代理节点相应的传输状态标志。
优选的,在发布节点中预置目标节点配置表,所述目标节点配置表包括该节点的位置信息以及该节点可接收程序的属性信息;查询所述目标节点配置表,获取与发布程序属性信息相匹配的目标节点位置信息;将发布程序发送至与所述位置信息相应的节点。
优选的,目标节点更新后,将该节点位置信息和更新后程序的属性信息发送至发布节点;将更新后的目标节点位置信息和程序属性信息作为监控信息存储在节点监控表中。
优选的,定期扫描目标节点,获取目标节点位置信息以及该节点当前程序的属性信息。
优选的,所述发布程序属性信息包括该程序的产品标识;所述获取代理节点位置信息是通过查询代理节点配置表,获取与所述发布程序产品标识相匹配的代理节点位置信息;所述获取目标节点位置信息是通过查询目标节点配置表,获取与所述发布程序产品标识相匹配的目标节点位置信息。
其中,所述发布程序属性信息还包括该程序的版本标识。
为解决上述问题,本发明公开了一种基于分布式网络的程序部署系统,包括服务器和客户端,其中,所述服务器包括第一存储单元,用于存储目标节点配置表,所述目标节点配置表包括该目标节点的位置信息以及可接收程序的属性信息;选择单元,用于查询所述目标节点配置表,获取与发布程序属性信息相匹配的目标节点位置信息;第一接口单元,用于将发布程序发送至与所述位置信息相应的目标节点;设置单元,用于在传输状态表中设置目标节点接收发布程序的传输状态,所述传输状态表存储在第一存储单元中;所述客户端包括第二接口单元,用于接收服务器发送的程序;反馈单元,用于收到发布程序后向服务器发送反馈信息。
优选的,客户端的反馈单元还包括更新反馈模块,用于在目标节点更新后,将更新后的目标节点位置信息和程序的属性信息发送至服务器;所述服务器还包括监控信息生成单元,用于在第一存储单元中的节点监控表中生成目标节点的监控信息,所述监控信息包括目标节点的位置信息和当前运行程序的属性信息。
优选的,所述服务器还包括扫描单元,用于定期扫描目标节点,获取目标节点位置信息以及该节点上当前运行程序的属性信息。
为解决上述问题,本发明还公开了另一种基于分布式网络的程序部署系统,包括服务器、代理和客户端,所述服务器和客户端通过代理相连,其中,所述服务器包括第一存储单元,用于存储代理节点配置表,所述代理节点配置表包括该代理节点的位置信息以及可接收程序的属性信息;第一选择单元,用于查询所述代理节点配置表,获取与发布程序属性信息相匹配的代理节点位置信息;第一接口单元,用于将发布程序发送至与所述代理节点位置信息相应的节点;所述代理包括第二存储单元,用于存储目标节点配置表,所述目标节点配置表包括该目标节点的位置信息以及可接收程序的属性信息;第二选择单元,用于查询所述目标节点配置表,获取与发布程序属性信息相匹配的目标节点位置信息;第二接口单元,用于将发布程序发送至与所述目标节点位置信息相应的节点;所述客户端包括第三接口单元,用于接收发布程序;第三反馈单元,用于收到发布程序后发送反馈信息;所述服务器还包括设置单元,用于在传输状态表中设置目标节点接收发布程序的传输状态,所述传输状态表存储在第一存储单元中。
优选的,所述代理还包括第二反馈单元,用于收到发布程序后发送反馈信息;所述设置单元还用于在传输状态表中设置代理节点接收发布程序的传输状态。
优选的,所述第一存储单元还存储了目标节点配置表,所述目标节点配置表包括该节点的位置信息以及该节点可接收程序的属性信息;所述第一选择单元还包括目标节点选择模块,用于查询第一存储单元中的目标节点配置表,获取与发布程序属性信息相匹配的目标节点位置信息,并通过第一接口单元将发布程序发送至与所述位置信息相应的节点。
优选的,所述第三反馈单元还包括更新反馈模块,用于在目标节点更新后,将更新后的目标节点位置信息和程序的属性信息发送至服务器;所述服务器还包括监控信息生成单元,用于在第一存储单元中的节点监控表中生成目标节点的监控信息,所述监控信息包括目标节点的位置信息和当前运行程序的属性信息。
优选的,所述服务器还包括扫描单元,用于定期扫描目标节点,获取目标节点位置信息以及该节点上当前运行程序的属性信息。
与现有技术相比,本发明具有以下优点本发明通过在发布节点中预置目标节点配置表,获取与发布程序属性信息相匹配的目标节点位置信息,然后将发布程序发送至该目标节点。采用这种方式避免了现有技术使用升级程序从服务器下载程序而产生的大量的无效请求,由于服务器不再响应和处理这种无效请求,因此大大降低了服务器的负荷,保证了服务器安全稳定的运行。同时,本发明将程序发送至目标节点后,会记录该程序在传输过程中的状态,并且,只有在收到了目标节点的反馈信息后才将该传输状态标记为结束。若目标节点未在规定的时间内发送反馈信息,则可认为传输过程异常,管理人员可据此做出反应。因此,通过本发明可准确获知目标节点接收程序的状况,从而保证目标节点能够及时地更新程序版本。避免了现有技术中由于升级程序故障,导致的无法及时下载程序,造成程序版本不一致的问题。
进一步的,本发明通过目标节点主动发送或者定期扫描目标节点的方式,获取该节点当前程序的版本信息,这样以来,使得所有节点上运行的程序都处于监控之中。对于不符合要求的节点和程序,可及时地预警和处理,彻底解决了各节点程序版本不一致而产生的数据风险。
本发明在部署程序时,只需在发布节点或服务器进行控制,各目标节点和客户端并不需要干预,因此,在及时准确地部署程序的同时还节约了大量的人力资源成本。


图1是分布式网络的拓扑结构示意图;图2是根据本发明所述的基于分布式网络的程序部署方法的优选实施例的步骤流程图;图3是根据本发明所述的基于分布式网络的程序部署系统的优选实施例的结构方框图;图4是根据本发明所述的基于分布式网络的程序部署系统的另一优选实施例的结构框图。
具体实施例方式
为了更好地理解本发明,在介绍本发明的实施例之前,首先介绍一下TCP/IP(Transmission Control Protocol/Internet Protocol)网络中节点间通信的基本原理。
网络中的设备根据它们的网络地址(TCP/IP网络中为IP地址)互相通信。IP地址是与硬件地址无关的“逻辑”地址。IP地址的结构有两部分,一部分定义网络号,另一部分定义网络内的主机号。同一个网络中的主机IP地址,其网络号相同,这个网络称为IP子网。
在同一IP子网中的两台主机通信时,可直接将分组发送给对方。要与其它IP子网的主机进行通信,则必须选择一个能到达目的子网上的路由器,把分组送给该路由器,再由路由器负责把分组送到目的地。所谓分组是将用户传送的数据划分成一定的长度,每个部分叫做一个分组。
路由动作包括两项基本内容寻径和转发。寻径即判定到达目的地的最佳路径,由路由选择算法来实现。为了判定最佳路径,路由选择算法必须启动并维护包含路由信息的路由表,其中路由信息依赖于所用的路由选择算法而不尽相同。路由选择算法将收集到的不同信息填入路由表中,根据路由表可将目的网络与下一站(nexthop)的关系告诉路由器。路由器间互通信息进行路由更新,更新维护路由表使之正确反映网络的拓扑变化,并由路由器根据量度来决定最佳路径。这就是路由选择协议(routing protocol),例如路由信息协议(RIP)、开放式最短路径优先协议(OSPF)和边界网关协议(BGP)等。
转发即沿寻径好的最佳路径传送信息。路由器首先在路由表中查找,判明是否知道如何将分组发送到下一个站点(路由器或主机),如果路由器不知道如何发送数据,通常将该分组丢弃;否则就根据路由表的相应表项将分组发送到下一个站点,如果目的网络直接与路由器相连,路由器就把分组直接送到相应的端口上。这就是路由转发协议(routed protocol)。
路由转发协议和路由选择协议是相互配合又相互独立,前者使用后者维护的路由表,同时后者要利用前者提供的功能来发布路由协议数据分组。
典型的路由选择方式有两种静态路由和动态路由。
静态路由是在路由器中设置的固定的路由表。除非网络管理员干预,否则静态路由不会发生变化。静态路由的优点是简单、高效、可靠。
动态路由是网络中的路由器之间相互通信,传递路由信息,利用收到的路由信息更新路由器表的过程。它能实时地适应网络结构的变化。如果路由更新信息表明发生了网络变化,路由选择软件就会重新计算路由,并发出新的路由更新信息。这些信息通过各个网络,引起各路由器重新启动其路由算法,并更新各自的路由表以动态地反映网络拓扑变化。动态路由适用于网络规模大、网络拓扑复杂的网络。当然,各种动态路由协议会不同程度地占用网络带宽和CPU资源。
本发明所述的基于分布式网络的程序部署方法,就是基于一个节点到多个节点的数据通信过程。
以上介绍了网络中节点通信的基本原理,下面结合附图和具体实施方式
对本发明作进一步详细的说明。
本发明所述的用于分布式网络的程序部署方法包括在发布节点中预置目标节点配置表,所述目标节点配置表包括该目标节点的位置信息以及可接收程序的属性信息;查询所述目标节点配置表,获取与发布程序属性信息相匹配的目标节点位置信息;将发布程序发送至与所述位置信息相应的节点;目标节点接收所述发布程序并发送反馈信息;在传输状态表中设置与该目标节点相应的传输状态标志。
参照图2,图2示出了根据本发明一个优选实施例的程序部署方法的步骤流程图。下面参考图2并参照图1对本发明的这一优选实施例进行详细描述。
在本例中,以M1为发布节点,节点M301和M302为目标节点。现将要发布的程序由M1部署到M301和M302。
步骤201发布节点中预置目标节点配置表,所述目标节点配置表包括该目标节点的位置信息以及可接收程序的属性信息。
目标节点配置表中存储了该目标节点的位置信息,通过位置信息可以在网络中唯一确定一个节点。如上文所述,要在网络中两个节点间互相通信,需要知道对方的IP地址。优选的,所述目标节点位置信息从节点配置数据中获取,该配置数据包括网络中所有节点的节点号、IP地址和节点端口号。在网络技术中,端口(Port)一般有两种含义一是物理意义上的端口,比如,ADSLModem、集线器、交换机、路由器用于连接其他网络设备的接口,如RJ-45端口、SC端口等等;二是逻辑意义上的端口,一般是指TCP/IP协议中的端口,端口号的范围从0到65535,比如用于浏览网页服务的80端口,用于FTP服务的21端口等等。本发明所述端口是指逻辑意义上的端口。以下,我们用节点号表示该节点的位置信息。如图1所示,在该网络的拓扑结构中,每一个节点对应其唯一的节点号。使用节点号可方便对本发明的实施例进行描述,但在通信中,节点号最终会被转换成该节点对应的IP和端口号用于寻址。
目标节点配置表中还存储有该目标节点可接收程序的属性信息,优选的,可接收程序的属性信息包括该程序的产品标识。为了让已发布的程序继续保持其生命力,需要对该程序做进一步改进和升级,因此,也就需要发布该程序新的版本。由于网络中不同节点的作用和目的通常存在差异,因此,各节点上可运行的程序也不尽相同。本发明中,用产品标识表示一类独立发布的程序,而对于同一类程序的不同版本通过版本标识进行区分。例如,在节点M301上运行两个程序,一个是用于人事管理的程序P1,另一个是用于帐务管理的程序P2,其中P1先后发布了两个版本V1.0和V1.1,P2发布了一个版本V1.0。利用程序属性信息中的产品标识和版本标识可唯一确定一个程序。
需要说明的是,所述产品标识并不局限为一个单一的数据,还可以是几个数据的组合,只要这种组合能够区分出不同的程序即可,本发明对此不作限制。所述发布节点中预置的目标节点配置表结构如下

步骤102查询目标节点配置表,获取与发布程序产品标识相匹配的目标节点位置信息。
当确定了一个要发布的程序后,同时也就确定了该程序的属性信息,如该程序的产品标识和版本标识等。这样,就可以根据该程序的产品标识查询目标节点配置表,获取该程序要部署的节点的位置信息。作为本领域的普通技术人员应该容易理解,根据发布程序的产品标识获取目标节点位置信息只是本发明优选的方法,在实施本发明时当然不必局限于此。例如可以通过程序的作者、所属公司、组织以及运行环境参数等信息匹配,也可以通过几种数据的组合进行匹配等。
步骤103将发布程序发送至与目标节点位置信息相应的节点。
步骤104目标节点接收发布程序并发送反馈信息。
步骤105在传输状态表中设置与该目标节点相应的传输状态标志。
将发布程序发送至相应的目标节点后,通过在传输状态表设置传输状态标志记录所述目标节点接收该发布程序的过程。所述传输状态表主要包括以下数据

优选的,传输状态表存储于发布节点中;发布节点将发布程序发送至目标节点后,在传输状态表设置与该目标节点相应的传输状态标志;发布节点收到目标节点的反馈信息后更新传输状态表中相应的传输状态标志。利用发布节点存储传输状态表,有利于管理人员对整个部署过程进行集中管理和监控。当然,在什么位置,以何种方式存储、更新传输状态表,本发明对此并不作限制。例如,可另外设置一管理节点用于存储、更新传输状态表。发布节点将发布程序发出后,即在传输状态表中设置相应的传输状态标志,这样,可以及时方便地查看发布程序的传输状态,当然,容易得知,发布节点在收到目标节点的反馈信息后再设置传输状态标志也是可以的。
通过传输状态表,可以准确地反映出各个目标节点在接收发布程序的过程中所处的状态。例如,若某个应该接收发布程序的目标节点在超出规定的时间后,其在传输状态表中没有产生相应的传输状态记录或者相应的传输状态标志仍为未结束,则可认为该节点接收失败。管理人员可据此向该节点重新发送发布程序,如此可有效保证所有目标节点的接收过程均处于监控之中,一旦接收过程发生异常,可及时进行处理,避免了现有技术中因为升级程序故障而导致无法下载程序,造成各节点程序版本的不一致。
优选的,目标节点安装完所述发布程序后,将该目标节点位置信息和程序属性信息发送至发布节点;发布节点在节点监控表中记录该目标节点当前运行程序的信息。这样以来,管理人员可通过节点监控表检验各目标节点当前程序的版本标识是否为最新,若否,则认为该目标节点尚未安装最新的发布程序,管理人员可向该节点发送通知。所述节点监控表主要包括以下数据

另外,本发明还可通过以下方法获取节点监控表所需的数据定期扫描目标节点,获取目标节点位置信息和该节点上当前运行程序的属性信息,然后将上述目标节点位置信息和程序属性信息存储在节点监控表中。上述扫描过程可以由驻留在各目标节点的监控程序定期将扫描结果发送回发布节点,也可以由发布节点定期向各目标节点发送查询请求以获取相应的信息。
可以看出,以何种方式获取节点监控表所需的数据,本发明对此不作限制,本领域的技术人员可根据需要选择使用。
本发明的另一实施例中,发布节点和目标节点通过代理节点相连,例如以节点M21作为代理节点。发布节点存储代理节点配置表,所述代理节点配置表包括该代理节点的位置信息以及该节点可接收程序的属性信息;代理节点中预置目标节点配置表,所述目标节点配置表包括该节点的位置信息以及该节点可接收程序的属性信息。首先,查询代理节点配置表,获得与要发布的程序属性信息相匹配的代理节点位置信息。然后,发布节点将发布程序发送至相应的代理节点;代理节点收到程序后,查询目标节点配置表,获取与该程序属性信息匹配的目标节点位置信息,并将程序发送至该目标节点;目标节点收到程序后发出反馈信息;最后,在传输状态表中设置与该目标节点相应的传输状态记录。
优选的,代理节点收到发布程序后发出反馈信息;在传输状态表中设置与该代理节点相应的传输状态标志。
优选的,在发布节点中还预置了目标节点配置表,所述目标节点配置表包括该节点的位置信息以及该节点可接收程序的属性信息;查询所述目标节点配置表,获取与发布程序属性信息相匹配的目标节点位置信息;将发布程序直接发送至与所述位置信息相应的节点。当需要检验需要接收发布程序的目标节点是否成功接收时,首先从目标节点配置表中查询出需要接收发布程序的全部目标节点,然后逐一判断该目标节点在传输状态表中是否存在相应的记录,若不存在,则认为该目标节点接收异常。
在本例中,发布节点可以将发布程序直接发送至目标节点;另外,当存在大量目标节点的情况下,发布节点只需向少量的几个代理节点发送程序,由代理节点继续向目标节点发送程序。这样以来,大大减少了发布节点向所有目标节点发送程序而导致的沉重负担,有效保证了发布节点正常稳定的工作。以上两种部署方式可择一使用,也可结合使用,在应用本发明时,本领域的技术人员可根据需要进行选择。
优选的,目标节点安装完所述发布程序后,将该目标节点位置信息和程序属性信息发送至发布节点;发布节点在节点监控表中记录该目标节点当前运行程序的信息。另外,本发明还可通过定期扫描目标节点,获取目标节点位置信息和该节点上当前运行程序的属性信息,然后将上述目标节点位置信息和程序属性信息存储在节点监控表中。节点监控表优选的存储于发布节点,当然也可以另外设置一节点用于存储和管理节点监控表。在实际应用中,目标节点还可以向代理节点发送更新后的反馈信息,由代理节点存储和管理节点监控表,这样,将节点监控的工作分散到各代理节点,减轻了发布节点的工作负担。
以上,结合具体实施例描述了本发明的一种基于分布式网络的程序部署方法。参照以上有关本发明的介绍,如图3所示,是本发明所述的一种基于分布式网络的程序部署系统,包括服务器3100和客户端3200,所述服务器部署在发布节点,所述客户端部署在目标节点,其中,所述服务器包括第一存储单元3106,用于存储目标节点配置表,所述目标节点配置表包括该目标节点的位置信息以及可接收程序的属性信息;选择单元3102,用于查询所述目标节点配置表,获取与发布程序属性信息相匹配的目标节点位置信息;第一接口单元3101,用于将发布程序发送至与所述位置信息相应的目标节点;设置单元3103,用于在传输状态表中设置目标节点接收发布程序的传输状态,所述传输状态表存储在第一存储单元中3106;所述客户端包括第二接口单元3201,用于接收服务器发送的程序;反馈单元3202,用于收到发布程序后向服务器发送反馈信息。
优选的,反馈单元还包括更新反馈模块3203,用于在目标节点更新后,将该目标节点位置信息和发布程序属性信息发送至服务器;所述服务器还包括监控信息生成单元3104,用于在第一存储单元3106中的节点监控表中生成目标节点的监控信息,所述监控信息包括目标节点的位置信息和当前运行程序的属性信息。
优选的,所述服务器还包括扫描单元3105,用于定期扫描目标节点,获取目标节点位置信息以及该节点上当前运行程序的属性信息。
服务器部署发布程序之前,首先,在服务器的第一存储单元3106中存储目标节点配置表;然后,选择单元3102查询所述目标节点配置表,获取与发布程序属性信息相匹配的目标节点位置信息,并通过第一接口单元3101,将发布程序发送至与所述位置信息相应的目标节点;第二接口3201单元收到服务器发送的程序后,反馈单元3202通过第二节口单元3201向服务器发送反馈信息;设置单元3103在第一节口单元3101收到反馈信息后在传输状态表中设置与目标节点相应的传输状态标志;目标节点更新后,更新反馈模块3203将更新后的目标节点位置信息和程序的属性信息发送至服务器。另外,服务器也可通过扫描单元3105,定期扫描目标节点,获取各目标节点位置信息以及该节点上当前程序的属性信息;监控信息生成单元3104将收到的目标节点位置信息和程序属性信息作为监控信息存储在节点监控表中。
如图4所示,是本发明所述的一种基于分布式网络的程序部署系统的另一实施例,包括服务器4100、代理4200和客户端4300,其中服务器4100和客户端4300通过代理4200相连接,其中,所述服务器4100包括第一存储单元4105,用于存储代理节点配置表,所述代理节点配置表包括该代理节点的位置信息以及可接收程序的属性信息;第一选择单元4104,用于查询所述代理节点配置表,获取与发布程序属性信息相匹配的代理节点位置信息;第一接口单元4101,用于将发布程序发送至与所述代理节点位置信息相应的节点;所述代理包括第二存储单元4203,用于存储目标节点配置表,所述目标节点配置表包括该目标节点的位置信息以及可接收程序的属性信息;第二选择单元4202,用于查询所述目标节点配置表,获取与发布程序属性信息相匹配的目标节点位置信息;第二接口单元4201,用于将发布程序发送至与所述目标节点位置信息相应的节点;所述客户端包括第三接口单元4301,用于接收发布程序;第三反馈单元4302,用于收到发布程序后发送反馈信息;所述服务器还包括设置单元4102,用于在传输状态表中设置目标节点接收发布程序的传输状态,所述传输状态表存储在第一存储单元4105中。
首先,服务器通过第一选择单元4104查询代理节点配置表,获取与发布程序属性信息相匹配的代理节点位置信息;然后,通过第一接口单元4101将发布程序发送至与所述代理节点位置信息相应的节点;代理收到发布程序后,通过第二选择单元4202查询第二存储单元4203中的目标节点配置表,获取与发布程序属性信息相匹配的目标节点位置信息,并通过第二接口单元4201,将发布程序发送至与所述目标节点位置信息相应的节点;客户端收到发布程序后,向服务器发送反馈信息;服务器收到反馈信息后,通过设置单元4102在传输状态表中设置与该目标节点相应的传输状态,若传输状态表中不存在该目标节点相应的记录,则通过设置单元4102生成相应的记录。
优选的,第一存储单元4105还存储了目标节点配置表;第一选择单元4104还包括目标节点选择模块4103;目标节点选择模块4103查询第一存储单元4105中的目标节点配置表,获取与发布程序属性信息相匹配的目标节点位置信息,并由第一接口单元4101将发布程序发送至与所述目标节点位置信息相应的节点。
服务器是否将发布程序直接发送至目标节点,可由本领域的技术人员在实施本发明时根据需要选择使用。
优选的,所述第三反馈单元4302还包括更新反馈模块4303,用于在目标节点更新后,将更新后的目标节点位置信息和程序的属性信息发送至服务器4100;所述服务器4100还包括监控信息生成单元4106,用于在第一存储单元4105中的节点监控表中生成目标节点的监控信息,所述监控信息包括目标节点的位置信息和当前运行程序的属性信息。优选的,服务器4100还包括扫描单元4107,用于定期扫描目标节点,获取目标节点位置信息以及该节点上当前运行程序的属性信息上述关于本发明所述系统的描述中未详尽之处,可以参见本说明书前述相关部分。
以上对本发明所提供的一种基于分布式网络的程序部署方法、系统,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式
及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
权利要求
1.一种基于分布式网络的程序部署方法,其特征在于,包括以下步骤在发布节点中预置目标节点配置表,所述目标节点配置表包括该目标节点的位置信息以及可接收程序的属性信息;查询所述目标节点配置表,获取与发布程序属性信息相匹配的目标节点位置信息;将发布程序发送至与所述位置信息相应的节点;目标节点接收所述发布程序并发送反馈信息;在传输状态表中设置与该目标节点相应的传输状态标志。
2.根据权利要求1所述的程序部署方法,其特征在于,所述传输状态表存储在发布节点中;发布节点将发布程序发送至目标节点后,在传输状态表中设置与该目标节点相应的传输状态标志;发布节点收到目标节点发送的反馈信息后,更新传输状态表中该目标节点相应的传输状态标志。
3.根据权利要求2所述的程序部署方法,其特征在于,还包括目标节点更新后,将该节点位置信息和更新后程序的属性信息发送至发布节点;将更新后的目标节点位置信息和程序属性信息作为监控信息存储在节点监控表中。
4.根据权利要求1至3所述的任意一项程序部署方法,其特征在于,还包括定期扫描目标节点,获取目标节点位置信息以及该节点当前程序的属性信息。
5.根据权利要求1所述的程序部署方法,其特征在于,所述发布程序属性信息包括该程序的产品标识;所述获取目标节点位置信息是通过查询目标节点配置表,获取与所述发布程序产品标识相匹配的目标节点位置信息。
6.根据权利要求5所述的程序部署方法,其特征在于,所述发布程序属性信息还包括该程序的版本标识。
7.一种基于分布式网络的程序部署方法,其特征在于,包括发布节点和目标节点通过代理节点相连;在发布节点中预置代理节点配置表,所述代理节点配置表包括该节点的位置信息以及该节点可接收程序的属性信息;查询所述代理节点配置表,获取与发布程序属性信息相匹配的代理节点位置信息;发布节点将发布程序发送至相应的代理节点;所述代理节点中预置目标节点配置表,所述目标节点配置表包括该节点的位置信息以及该节点可接收程序的属性信息;查询所述目标节点配置表,获取与发布程序属性信息相匹配的目标节点位置信息;代理节点将收到的发布程序发送至相应的目标节点。目标节点接收所述发布程序并发送反馈信息;在传输状态表中设置与该目标节点相应的传输状态标志。
8.根据权利要求7所述的程序部署方法,其特征在于,还包括代理节点接收所述发布程序并发送反馈信息;在传输状态表中设置与该代理节点相应的传输状态标志。
9.根据权利要求8所述的程序部署方法,其特征在于,还包括在发布节点中预置目标节点配置表,所述目标节点配置表包括该节点的位置信息以及该节点可接收程序的属性信息;查询所述目标节点配置表,获取与发布程序属性信息相匹配的目标节点位置信息;将发布程序发送至与所述位置信息相应的节点。
10.根据权利要求9所述的程序部署方法,其特征在于,还包括目标节点更新后,将该节点位置信息和更新后程序的属性信息发送至发布节点;将更新后的目标节点位置信息和程序属性信息作为监控信息存储在节点监控表中。
11.根据权利要求7至10所述的任意一项程序部署方法,其特征在于,还包括定期扫描目标节点,获取目标节点位置信息以及该节点当前程序的属性信息。
12.根据权利要求7所述的程序部署方法,其特征在于,所述发布程序属性信息包括该程序的产品标识;所述获取代理节点位置信息是通过查询代理节点配置表,获取与所述发布程序产品标识相匹配的代理节点位置信息;所述获取目标节点位置信息是通过查询目标节点配置表,获取与所述发布程序产品标识相匹配的目标节点位置信息。
13.根据权利要求12所述的程序部署方法,其特征在于,所述发布程序属性信息还包括该程序的版本标识。
14.一种基于分布式网络的程序部署系统,其特征在于,包括服务器和客户端,其中,所述服务器包括第一存储单元,用于存储目标节点配置表,所述目标节点配置表包括该目标节点的位置信息以及可接收程序的属性信息;选择单元,用于查询所述目标节点配置表,获取与发布程序属性信息相匹配的目标节点位置信息;第一接口单元,用于将发布程序发送至与所述位置信息相应的目标节点;设置单元,用于在传输状态表中设置目标节点接收发布程序的传输状态,所述传输状态表存储在第一存储单元中;所述客户端包括第二接口单元,用于接收服务器发送的程序;反馈单元,用于收到发布程序后向服务器发送反馈信息。
15.根据权利要求14所述的程序部署系统,其特征在于,客户端的反馈单元还包括更新反馈模块,用于在目标节点更新后,将更新后的目标节点位置信息和程序的属性信息发送至服务器;所述服务器还包括监控信息生成单元,用于在第一存储单元中的节点监控表中生成目标节点的监控信息,所述监控信息包括目标节点的位置信息和当前运行程序的属性信息。
16.根据权利要求14或15所述的程序部署系统,其特征在于,所述服务器还包括扫描单元,用于定期扫描目标节点,获取目标节点位置信息以及该节点上当前运行程序的属性信息。
17.一种基于分布式网络的程序部署系统,其特征在于,包括服务器、代理和客户端,所述服务器和客户端通过代理相连,其中,所述服务器包括第一存储单元,用于存储代理节点配置表,所述代理节点配置表包括该代理节点的位置信息以及可接收程序的属性信息;第一选择单元,用于查询所述代理节点配置表,获取与发布程序属性信息相匹配的代理节点位置信息;第一接口单元,用于将发布程序发送至与所述代理节点位置信息相应的节点;所述代理包括第二存储单元,用于存储目标节点配置表,所述目标节点配置表包括该目标节点的位置信息以及可接收程序的属性信息;第二选择单元,用于查询所述目标节点配置表,获取与发布程序属性信息相匹配的目标节点位置信息;第二接口单元,用于将发布程序发送至与所述目标节点位置信息相应的节点;所述客户端包括第三接口单元,用于接收发布程序;第三反馈单元,用于收到发布程序后发送反馈信息;所述服务器还包括设置单元,用于在传输状态表中设置目标节点接收发布程序的传输状态,所述传输状态表存储在第一存储单元中。
18.根据权利要求17所述的系统,其特征在于,所述代理还包括第二反馈单元,用于收到发布程序后发送反馈信息;所述设置单元还用于在传输状态表中设置代理节点接收发布程序的传输状态。
19.根据权利要求18所述的系统,其特征在于,所述第一存储单元还存储了目标节点配置表,所述目标节点配置表包括该节点的位置信息以及该节点可接收程序的属性信息;所述第一选择单元还包括目标节点选择模块,用于查询第一存储单元中的目标节点配置表,获取与发布程序属性信息相匹配的目标节点位置信息,并通过第一接口单元将发布程序发送至与所述位置信息相应的节点。
20.根据权利要求19所述的系统,其特征在于,所述第三反馈单元还包括更新反馈模块,用于在目标节点更新后,将更新后的目标节点位置信息和程序的属性信息发送至服务器;所述服务器还包括监控信息生成单元,用于在第一存储单元中的节点监控表中生成目标节点的监控信息,所述监控信息包括目标节点的位置信息和当前运行程序的属性信息。
21.根据权利要求17至20所述的任意一种程序部署系统,其特征在于,所述服务器还包括扫描单元,用于定期扫描目标节点,获取目标节点位置信息以及该节点上当前运行程序的属性信息。
全文摘要
本发明公开了一种基于分布式网络的程序部署方法和系统,用于解决现有技术在部署程序时难以控制版本一致的问题。所述方法包括在发布节点中预置目标节点配置表,所述目标节点配置表包括该目标节点的位置信息以及可接收程序的属性信息;查询所述目标节点配置表,获取与发布程序属性信息相匹配的目标节点位置信息;将发布程序发送至与所述位置信息相应的节点;目标节点接收所述发布程序并发送反馈信息;在传输状态表中设置与该目标节点相应的传输状态标志。这样以来,通过监控每一个目标节点接收程序的过程,有效保证了各目标节点上程序版本的一致。
文档编号G06F9/445GK1976289SQ200610170640
公开日2007年6月6日 申请日期2006年12月22日 优先权日2006年12月22日
发明者林志农, 周子坚, 张立峰, 郑炜杰 申请人:中国建设银行股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1