CN110417850B - 软件配置获取方法、系统、服务器及介质 - Google Patents
软件配置获取方法、系统、服务器及介质 Download PDFInfo
- Publication number
- CN110417850B CN110417850B CN201910495658.7A CN201910495658A CN110417850B CN 110417850 B CN110417850 B CN 110417850B CN 201910495658 A CN201910495658 A CN 201910495658A CN 110417850 B CN110417850 B CN 110417850B
- Authority
- CN
- China
- Prior art keywords
- server
- software configuration
- configuration content
- node
- node server
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
- G06F8/658—Incremental updates; Differential updates
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/34—Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/55—Push-based network services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/60—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
Abstract
本发明实施例涉及计算机技术领域,特别涉及一种软件配置获取方法、系统、服务器及介质。软件配置获取方法,应用于节点服务器,包括:判断是否接收到源服务器主动推送的软件配置内容的增量更新数据;若否,向服务器请求所述节点服务器对应的软件配置内容,直至从所述服务器接收到所述节点服务器对应的软件配置内容;所述服务器包含所述源服务器或与所述节点服务器处于同一网络内的其他节点服务器。采用本发明的实施方式,使得服务器间可采取多种方式进行软件配置内容的传输,有效提升了软件配置内容分发传输的效率。
Description
技术领域
本发明实施例涉及计算机技术领域,特别涉及一种软件配置获取方法、系统、服务器及介质。
背景技术
随着互联网技术的蓬勃发展,对网络服务质量的要求也日益增高。为了满足不同场景下的功能需求,通常需要对不同服务器配置不同的功能性配置内容,以使得服务器能够提供不同功能的服务;软件的功能性配置内容十分丰富多样,例如内容缓存配置、重定向配置、防盗链配置、访问控制列表配置等,软件配置内容需要发布至服务器上才能实现其对应的功能,因此软件配置内容的传输发布的时效性显得尤为重要。然而发明人发现相关技术中至少存在如下问题:相关技术中,软件配置内容传输发布的方式较为单一,通常是节点服务器主动向源服务器拉取软件配置内容,易造成软件配置内容分发的时效性低,传输效率差的问题。
发明内容
本发明实施方式的目的在于提供一种软件配置获取方法、系统、服务器及介质,使得服务器间可采取多种方式进行软件配置内容的传输,有效提升了软件配置内容分发传输的效率。
为解决上述技术问题,本发明的实施方式提供了一种软件配置获取方法,应用于节点服务器,包括:判断是否接收到源服务器主动推送的软件配置内容的增量更新数据;若否,向服务器请求所述节点服务器对应的软件配置内容,直至从所述服务器接收到所述节点服务器对应的软件配置内容;所述服务器包含所述源服务器或与所述节点服务器处于同一网络内的其他节点服务器。
本发明的实施方式还提供了一种软件配置系统,包括:源服务器集群及节点服务器,所述源服务器集群包括:与预设的产品线一一对应的源服务器组,每组内包括至少两个互相备份的源服务器,每组内的所述源服务器中存储有与所述预设的产品线对应的软件配置内容,且所述源服务器根据所述软件配置内容对应的应用服务类型将所述软件配置内容分类存储;所述源服务器用于当检测到所述源服务器内存储的软件配置内容更新后,向所述源服务器对应的节点服务器主动推送所述软件配置内容的增量更新数据。
本发明的实施方式还提供了一种节点服务器,其特征在于,包括:至少一个处理器;以及,与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行上述的软件配置获取方法。
本发明的实施方式还提供了一种计算机可读存储介质,存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现上述的软件配置获取方法。
本发明实施方式相对于现有技术而言,节点服务器判断是否接收到源服务器主动推送的软件配置内容的增量更新数据;若否,节点服务器向服务器请求所述节点服务器对应的软件配置内容,直至从所述服务器接收到所述节点服务器对应的软件配置内容;所述服务器包含所述源服务器或与所述节点服务器处于同一网络内的其他节点服务器。通过本发明的实施方式,节点服务器可被动接收由源服务器主动推送的软件配置内容的增量更新数据,而无需主动向源服务器拉取全量软件配置内容,有效节省了数据传输量;节点服务器也可在未接收到由源服务器主动推送的软件配置内容的增量更新数据时,主动向源服务器或其他节点服务器请求节点服务器对应的全量软件配置内容;也就是说,节点服务器可通过被动接收和主动请求两种方式来获取到软件配置内容,同时源服务器也可通过主动推送和响应请求两种方式来推送软件配置内容;在节点服务器主动请求其对应的软件配置内容时,可向源服务器或与节点服务器处于同一网络内的其他节点服务器请求其对应的软件配置内容,直至接收到节点服务器对应的软件配置内容,上述饱和式主动请求软件配置内容的方式,有效保证了获取软件配置内容的成功率;综上,节点服务器可采取多种方式进行软件配置内容的获取,有效避免了节点服务器仅通过主动向源服务器拉取软件配置内容时造成的软件配置内容传输时效性差、效率低的问题,也就是说本发明实施方式涉及的软件配置获取方式可适用于多样化的业务场景,有效提升了软件配置内容分发传输的效率。
另外,所述向服务器请求所述节点服务器对应的软件配置内容,包括:向所述源服务器请求所述节点服务器对应的软件配置内容;若向所述源服务器请求失败,则向所述其他节点服务器请求所述节点服务器对应的软件配置内容;也就是说,由于节点服务器无法确定其对应的软件配置内容在源服务器内是否有更新,因此当节点服务器在未接收到由源服务器主动推送的软件配置内容的增量更新数据时,先向源服务器请求其全量软件配置内容;若当源服务器宕机或通信链路故障而导致向源服务器主动请求失败时,节点服务器还可通过处于同一网络内的其他节点服务器请求全量软件配置内容,以保证获取软件配置内容的成功率;且由于源服务器内存储的是全量的软件配置内容,而若干个其他节点服务器内存储的并不一定是全量的软件配置内容,从而当单个其他节点服务器内未存储有节点服务器请求的软件配置内容时,节点服务器需要向其他节点服务器发送多次请求,直至请求到其所需的软件配置内容,而当源服务器内存储有节点服务器所需的全量软件配置内容时,节点服务器只需向源服务器发送一次请求即可,也就是节点服务器先向源服务器主动请求软件配置内容时产生的数据传输量远小于向其他节点服务器主动请求时产生的数据传输量,因此节点服务器先向源服务器主动请求可节省节点服务器的工作内耗。
另外,所述方法还包括:判断接收到的所述节点服务器对应的软件配置内容是否是最新的软件配置内容;若是,则根据接收到的所述节点服务器对应的软件配置内容,更新所述节点服务器对应的软件配置内容;也就是说,本实施方式采用了一种软件配置内容的校验机制,如果节点服务器从服务器接收到其对应的全量软件配置内容是最新版本的,则节点服务器可将其对应的全量软件配置内容进行更新;如果接收到的全量软件配置内容不是最新版本的,说明节点服务器对应的全量软件配置内容未更新,则节点服务器不进行更新,以保证节点服务器能够及时准确的同步于服务器的更新。
另外,所述方法还包括:在接收到所述源服务器主动推送的软件配置内容的增量更新数据后,判断所述软件配置内容的增量更新数据是否正确;若是,则根据所述软件配置内容的增量更新数据,更新所述节点服务器对应的软件配置内容;也就是说,本实施方式采用了一种增量更新数据的校验机制,如果节点服务器接收到源服务器主动下发的增量更新数据是正确的(例如接收到的的确是节点服务器对应的软件配置内容的增量更新数据,或接收到的的确是增量更新的数据),则节点服务器存储增量更新数据,作为对节点服务器对应的软件配置内容的更新,以保证节点服务器能够及时准确的同步于服务器的更新。
另外,所述节点服务器对应有客户服务器,所述节点服务器对应的软件配置内容由每个所述客户服务器对应的软件配置内容组成;所述方法还包括:将所述节点服务器对应的更新后的软件配置内容推送至与所述更新后的软件配置内容对应的客户服务器,也就是在节点服务器进行软件配置内容的更新后,节点服务器对应的客户服务器也能进行软件配置内容的更新,从而客户服务器能及时根据更新后的软件配置内容为客户提供服务。
另外,还包括:当接收到所述节点服务器对应的客户服务器发送的对软件配置内容的请求时,判断所述节点服务器内存储的软件配置内容中是否包括所述客户服务器请求的软件配置内容;若否,则向所述服务器请求所述客户服务器请求的软件配置内容;将从所述服务器接收到的所述客户服务器请求的软件配置内容推送至所述客户服务器;也就是说,若节点服务器内已存储有客户服务器请求的软件配置内容,则节点服务器可直接向客户服务器推送,使得客户服务器可快速获取到软件配置内容来为客户提供服务;若节点服务器内没有存储客户服务器请求的软件配置内容,则节点服务器向包括源服务器或与所述节点服务器处于同一网络内的其他节点服务器请求客户服务器所需的软件配置内容;同样也包括节点服务器先向源服务器请求客户服务器所需的软件配置内容,若向源服务器请求失败,则向与所述节点服务器处于同一网络内的其他节点服务器请求客户服务器所需的软件配置内容,以保证客户服务器能及时获取到所需的软件配置内容。
另外,还包括:将从所述服务器接收到的所述客户服务器请求的软件配置内容存储至所述节点服务器;也就是说,节点服务器将获取到客户服务器所需的软件配置内容存储至节点服务器本地,即对节点服务器存储的软件配置内容进行了更新,令节点服务器对应的软件配置内容也包括上述客户服务器新请求的软件配置内容,从而在下一次有其他客户服务器请求本次新请求的软件配置内容时,节点服务器可直接推送,省去了节点服务器向服务器请求软件配置内容的操作。
另外,所述判断是否接收到源服务器主动推送的软件配置内容的增量更新数据,包括:根据预设的更新周期,判断是否接收到源服务器主动推送的软件配置内容的增量更新数据,有利于控制节点服务器的工作内耗,也能及时更新节点服务器内的软件配置内容。
附图说明
一个或多个实施例通过与之对应的附图中的图片进行示例性说明,这些示例性说明并不构成对实施例的限定。
图1是根据本发明第一实施方式中软件配置获取方法的流程图;
图2是根据本发明第二实施方式中软件配置获取方法的流程图;
图3是根据本发明第三实施方式中软件配置获取方法的流程图;
图4是根据本发明第四实施方式中节点服务器响应客户服务器的流程图;
图5是根据本发明第五实施方式中软件配置推送方法的流程图;
图6是根据本发明第六实施方式中软件配置系统的结构方框图;
图7是根据本发明第六实施方式中源服务器的存储关系图;
图8是根据本发明第七实施方式中节点服务器的结构方框图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合附图对本发明的各实施方式进行详细的阐述。然而,本领域的普通技术人员可以理解,在本发明各实施方式中,为了使读者更好地理解本申请而提出了许多技术细节。但是,即使没有这些技术细节和基于以下各实施方式的种种变化和修改,也可以实现本申请所要求保护的技术方案。以下各个实施例的划分是为了描述方便,不应对本发明的具体实现方式构成任何限定,各个实施例在不矛盾的前提下可以相互结合相互引用。
本发明的第一实施方式涉及一种软件配置获取方法,应用于节点服务器,具体流程如图1所示,包括:
步骤101,判断是否接收到源服务器主动推送的软件配置内容的增量更新数据;若否,执行步骤102;若是,结束。
步骤102,向服务器请求节点服务器对应的软件配置内容,直至从服务器接收到节点服务器对应的软件配置内容。
下面对本实施方式的软件配置获取方法的实现细节进行具体的说明,以下内容仅为方便理解提供的实现细节,并非实施本方案的必须。需要说明的是,在本实施方式中,节点服务器与服务器(包括源服务器或与节点服务器处于同一网络内的其他节点服务器)融合了CDN(内容分发网络)进行数据的传输加速,CDN能够通过均衡负载技术,将请求定向到最合适的就近服务器上,以解决网络传输拥堵的状况,提高请求响应速度。
在步骤101中,节点服务器判断是否接收到源服务器主动推送的软件配置内容的增量更新数据。具体地说,源服务器在检测到源服务器内存储的软件配置内容更新后,会向源服务器对应的节点服务器主动推送软件配置内容的增量更新数据,增量更新数据具体指更新过的软件配置内容的部分,不包括未更新的软件配置内容的部分,例如,源服务器内存储有软件配置内容A,软件配置内容A在更新后包括(A+A1),则源服务器推送的增量更新数据指软件配置内容A1的部分,从而有效控制了服务器间的数据传输量;当源服务器至节点服务器的通信链路正常时,节点服务器会接收到源服务器主动推送的软件配置内容的增量更新数据。在实际应用中,一个源服务器可通过UDP(用户数据报协议),来向多个节点服务器推送增量更新数据,即通过UDP进行一对多的数据传输通信,数据传输的延迟较小,传输效率较高。需要说明的是,在实际应用中,源服务器主动推送的数据并不限于增量更新数据,源服务器也可主动推送更新后的全量软件配置内容至节点服务器等。
更优的,源服务器在检测到源服务器内存储的软件配置内容更新后,会实时向源服务器对应的节点服务器主动推送软件配置内容的增量更新数据,也就是节点服务器会实时接收到源服务器主动推送的增量更新数据,这种实时传输、增量同步的方式有效提升了软件配置内容传输的时效性和高效性。
更优的,节点服务器可根据预设的更新周期,判断是否接收到源服务器主动推送的软件配置内容的增量更新数据;例如,预设节点服务器的更新周期为30分钟,则节点服务器每隔30分钟进行一次判断,若超过30分钟未接收到源服务器主动推送的软件配置内容的增量更新数据,则节点服务器触发向服务器的主动请求。通过这种方式,无需节点服务器时刻判断是否接收到增量更新数据,有利于控制节点服务器的工作内耗,另一方面,也能及时更新节点服务器内软件配置内容。
在步骤102中,节点服务器在未接收到源服务器主动推送的软件配置内容的增量更新数据时,向服务器请求节点服务器对应的软件配置内容(即请求节点服务器对应的全量软件配置内容,下同)直至从服务器接收到节点服务器对应的软件配置内容;其中,服务器包括源服务器或与所述节点服务器处于同一网络内的其他节点服务器。具体地说,节点服务器可向源服务器请求对应的软件配置内容,或是向处于同一网络内的其他节点服务器请求对应的软件配置内容,直至节点服务器接收到其对应的软件配置内容。也就是说,节点服务器在未接收到主动推送的增量更新数据时,可通过多种主动请求的方式,饱和式地来获取软件配置内容,从而保证了获取到软件配置内容的成功率。
本实施方式相对于现有技术而言,源服务器在检测到源服务器内存储的软件配置内容更新后,会向源服务器对应的节点服务器主动推送软件配置内容的增量更新数据,也就是说节点服务器可被动接收由源服务器主动推送的软件配置内容的增量更新数据,而无需主动向源服务器拉取全量软件配置内容,有效节省了数据传输量;节点服务器也可在未接收到由源服务器主动推送的软件配置内容的增量更新数据时,主动向源服务器或其他节点服务器请求节点服务器对应的全量软件配置内容;也就是说,节点服务器可通过被动接收和主动请求两种方式来获取到软件配置内容,同时源服务器也可通过主动推送和响应请求两种方式来推送软件配置内容;在节点服务器主动请求其对应的软件配置内容时,可向源服务器或与节点服务器处于同一网络内的其他节点服务器请求其对应的软件配置内容,直至接收到节点服务器对应的软件配置内容,上述饱和式主动请求软件配置内容的方式,有效保证了获取软件配置内容的成功率;综上,节点服务器可采取多种方式进行软件配置内容的获取,有效避免了节点服务器仅通过主动向源服务器拉取软件配置内容时造成的软件配置内容传输时效性差、效率低的问题,也就是说本发明实施方式涉及的软件配置获取方式可适用于多样化的业务场景,有效提升了软件配置内容分发传输的效率。
本发明的第二实施方式涉及一种软件配置获取方法,本实施方式与第一实施方式大致相同,本发明第二实施方式中,节点服务器在未接收到源服务器主动推送的增量更新数据时,先向源服务器请求节点服务器对应的软件配置内容,若向源服务器请求失败,则向其他节点服务器请求节点服务器对应的软件配置内容。本实施方式中的软件配置获取方法如图2所示,下面对图2的流程做具体说明:
步骤201,判断是否接收到源服务器主动推送的软件配置内容的增量更新数据;若否,执行步骤202;若是,结束。此步骤与步骤101大致相同,此处不再赘述。
步骤202,向源服务器请求节点服务器对应的软件配置内容。
步骤203,判断向源服务器请求节点服务器对应的软件配置内容是否成功;若否,执行步骤204,若是,结束。
具体地说,节点服务器在未接收到源服务器主动推送的增量更新数据后,先向源服务器请求节点服务器对应的软件配置内容;在一个实例中,设置有节点服务器的更新周期为30分钟,若节点服务器在经过30分钟后未收到源服务器主动推送的增量更新数据,则节点服务器主动向源服务器请求其对应的全量软件配置内容。由于节点服务器无法确定其对应的软件配置内容在源服务器内是否有更新,因此节点服务器直接请求全量软件配置内容。当源服务器至节点服务器的通信链路正常时,源服务器会响应节点服务器的请求,向节点服务器反馈其对应的全量软件配置内容,即节点服务器向源服务器请求成功;当源服务器宕机或源服务器至节点服务器的通信链路不正常时,源服务器无法响应节点服务器的请求,即节点服务器向源服务器请求失败。
步骤204,向其他节点服务器请求节点服务器对应的软件配置内容;生成告警信息。
具体地说,当节点服务器向源服务器请求失败时,节点服务器转而向与节点服务器处于同一网络内的其他节点服务器请求对应的软件配置内容;在实际应用中,节点服务器可采用TCP(传输控制协议),来向处于同一网络内的其他节点服务器发送请求,直至接收到其他节点服务器对应的软件配置内容;其中TCP是一种面向连接的、可靠地传输层通信协议;上述方式保证了节点服务器获取软件配置内容的成功率。
具体地说,由于节点服务器向源服务器请求失败,因此在节点服务器向其他节点服务器请求对应的软件配置内容时,还生成告警信息,用于告警提示源服务器宕机或源服务器与节点服务器间的通信链路故障的情况,以便维修人员能及时对故障进行维修,以保证源服务器的正常运作。
需要说明的是,节点服务器向源服务器或向其他节点服务器请求软件配置内容时,都是直到节点服务器接收到其对应的全量软件配置内容时才停止请求,即节点服务器是向服务器发送饱和式的请求,有效保证了获取软件配置内容的成功率。
由于源服务器内存储的是全量的软件配置内容,而若干个其他节点服务器内存储的并不一定是全量的软件配置内容,从而当节点服务器向其他节点服务器发送请求,且单个其他节点服务器内未存储有节点服务器请求的软件配置内容时,节点服务器需要向其他节点服务器发送多次请求,直至请求到其所需的软件配置内容;而当源服务器内存储有节点服务器所需的全量软件配置内容时,节点服务器只需向源服务器发送一次请求即可,也就是节点服务器向源服务器发送请求时产生的数据传输量,远小于节点服务器向若干个其他节点服务器发送请求时产生的数据传输量,因此节点服务器先向源服务器发送请求,若请求失败再向其他节点服务器发送请求,有效节省了节点服务器在工作中的内耗。
本实施方式相对于现有技术而言,节点服务器在未接收到源服务器主动推送的增量更新数据后,先向源服务器请求节点服务器对应的全量软件配置内容;若当源服务器宕机或通信链路故障而导致向源服务器主动请求失败时,则向处于同一网络内其他节点服务器请求节点服务器对应的全量软件配置内容,以保证获取软件配置内容的成功率,并控制了节点服务器的工作内耗。同时,当向源服务器主动请求失败时,还生成告警信息,以提示维修人员尽快对源服务器或通信链路的故障进行维修。
本发明第三实施方式涉及一种软件配置获取方法,本实施方式与第二实施方式大致相同,本发明第三实施方式中,节点服务器对接收到的增量更新数据或全量软件配置进行校验检测,并进行节点服务器和客户服务器的更新。本实施方式中的软件配置获取方法如图3所示,下面对图3的流程做具体说明:
步骤301,判断是否接收到源服务器主动推送的软件配置内容的增量更新数据;若否,执行步骤302;若是,执行步骤303。此步骤与步骤201大致相同,此处不再赘述。
步骤302,向源服务器请求节点服务器对应的软件配置内容。此步骤与步骤202大致相同,此处不再赘述。
步骤303,判断接收到的软件配置内容的增量更新数据是否正确;若是,执行步骤307;若否,结束。
具体地说,节点服务器在接收到源服务器主动推送的软件配置内容的增量更新数据后,判断增量更新数据是否正确;也就是说,本步骤采用了一种增量更新数据的校验检测机制,校验检测的内容可包括:判断接收到的增量更新数据是否是节点服务器对应的软件配置内容的增量更新数据、判断接收到的增量更新数据是否相对于节点服务器是增量更新的数据,等。在实际应用中,可利用增量更新数据的版本号信息来实现校验检测,例如:比对增量更新数据内置的软件配置内容的版本号信息,与节点服务器对应的软件配置内容的版本号信息是否一致,若一致,说明接收到的确是节点服务器对应的软件配置内容的增量更新数据;又例如:比对增量更新数据内置的软件配置内容的版本号信息相对于节点服务器对应的软件配置内容的版本号信息,是否是更为新的版本号信息,若是,说明接收到的的确是增量更新的数据。在节点服务器校验检测得到正确的增量更新数据时,则更新节点服务器对应的软件配置内容。
步骤304,判断向源服务器请求节点服务器对应的软件配置内容是否成功;若否,执行步骤305,若是,执行步骤306。此步骤与步骤203大致相同,此处不再赘述。
步骤305,向其他节点服务器请求节点服务器对应的软件配置内容;生成告警信息。此步骤与步骤204大致相同,此处不再赘述。
步骤306,判断接收到的软件配置内容是否是最新的软件配置内容;若是,执行步骤307;若否,结束。
具体地说,由于节点服务器无法确定其对应的软件配置内容是否有更新,因此节点服务器在从源服务器、或是从处于同一网络的其他节点服务器接收到全量软件配置内容后,需要判断接收的全量软件配置内容是否是最新的;也就是说,本步骤采用了一种全量软件配置内容的校验检测机制,校验检测的内容包括:接收到的全量软件配置内容相对于节点服务器现有的软件配置内容是否是更新过的,等;在实际应用中,也可利用软件配置内容的版本号信息来实现校验检测,例如:比对全量软件配置内容的版本号信息与节点服务器现有的软件配置内容的版本号信息,若一致,说明获取到的全量软件配置内容并非是更新过的,则节点服务器不进行更新;若获取到的全量软件配置内容的版本号信息更为新,说明获取到的全量软件配置内容是更新过的,则更新节点服务器对应的软件配置内容。
步骤307,更新节点服务器对应的软件配置内容。
具体地说,当节点服务器接收到源服务器主动推送的正确的增量更新数据时,根据接收到的增量更新数据,更新节点服务器对应的软件配置内容;在一个实例中,节点服务器对应有软件配置内容A,即节点服务器内存储有软件配置内容A,当节点服务器接收到源服务器主动推送的增量更新数据A1时,节点服务器将增量更新数据A1存储至本地,即节点服务器更新后对应有软件配置内容(A+A1)。
具体地说,当节点服务器从服务器接收到最新的软件配置内容时,更新节点服务器对应的全量软件配置内容;在一个实例中,节点服务器对应有软件配置内容B,即节点服务器内存储有软件配置内容B,当节点服务器从服务器接收到更新后的全量软件配置内容B1时,节点服务器将本地存储的软件配置内容B替换为软件配置内容B1,即节点服务器更新后对应有软件配置内容B1。
步骤308,将节点服务器对应的更新后的软件配置内容推送至与更新后的软件配置内容对应的客户服务器。
具体地说,节点服务器对应有客户服务器,客户服务器用于响应客户通过客户端发送的请求;节点服务器对应的软件配置内容由每个对应的客户服务器对应的软件配置内容组成。在一个实例中,节点服务器对应有客户服务器1和客户服务器2,其中,客户服务器1对应软件配置内容A和B,客户服务器2对应软件配置内容B和C,则节点服务器对应的软件配置内容包括A、B和C。当节点服务器更新了对应的软件配置内容A和B后,则将更新后的软件配置内容A推送至客户服务器1,将更新后的软件配置内容B推送至客户服务器1和2,从而客户服务器能及时根据更新后的软件配置内容为客户提供服务。
本实施方式相对于现有技术而言,节点服务器对接收到的增量更新数据或全量软件配置内容进行校验检测,当确认增量更新数据正确,或全量软件配置内容是最新版本时,节点服务器进行对应的软件配置内容的更新,保证了节点服务器能及时准确的同步于服务器的更新;当节点服务器进行对应的软件配置内容的更新后,还将更新后的软件配置内容推送至客户服务器,使得客户服务器也能及时根据更新后的软件配置内容为客户提供服务。
本发明第四实施方式涉及一种软件配置获取方法,本实施方式在第一实施方式的基础上,还响应于节点服务器对应的客户服务器对软件配置内容的请求。本实施方式中的软件配置获取方法如图4所示,图4中仅说明本实施方式中响应客户服务器的流程,对第一实施方式所涉及的流程不再赘述。下面对图4的流程做具体说明:
步骤401,当接收到节点服务器对应的客户服务器发送的对软件配置内容的请求时,判断节点服务器内存储的软件配置内容中是否包括客户服务器请求的软件配置内容;若是,执行步骤404;若否,执行步骤402。
具体地说,当节点服务器对应有新的客户服务器上架时,客户服务器向节点服务器请求其对应的软件配置内容,以实现软件配置内容的预先加载。若节点服务器内存储有客户服务器请求的软件配置内容,则直接向客户服务器推送;若节点服务器内没有存储有客户服务器请求的软件配置内容,则需要向服务器请求客户服务器请求的软件配置内容。
步骤402,向服务器请求客户服务器请求的软件配置内容。
具体地说,此处的服务器指源服务器或与节点服务器处于同一网络内的其他节点服务器,节点服务器向服务器请求客户服务器请求的软件配置内容的步骤,大致同第二实施例中步骤202至步骤204的说明,此处不再赘述。
步骤403,将从服务器接收到的客户服务器请求的软件配置内容存储至节点服务器。
具体地说,节点服务器将获取到客户服务器所需的软件配置内容存储至节点服务器本地,即对节点服务器存储的软件配置内容进行了更新,令节点服务器对应的软件配置内容也包括上述客户服务器新请求的软件配置内容,从而在下一次有其他客户服务器请求本次新请求的软件配置内容时,节点服务器可直接推送,省去了节点服务器向服务器请求软件配置内容的操作。
步骤404,将客户服务器请求的软件配置内容推送至客户服务器。
具体地说,节点服务器将存储的客户服务器请求的软件配置内容推送至客户服务器,或是节点服务器将从服务器请求到客户服务器请求的软件配置内容推送至客户服务器,以保证客户服务器能及时获取到所需的软件配置内容。
需要说明的是,步骤403与404并无严格的先后执行顺序。
在一个实例中,节点服务器对应有新的客户服务器3上架,客户服务器3向节点服务器请求软件配置内容D,但节点服务器内未存储有软件配置内容D,则节点服务器从服务器(源服务器或与节点服务器处于同一网络内的其他节点服务器)获取到软件配置内容D推送至客户服务器3,并将软件配置内容D存储至节点服务器本地。
本实施方式相对于现有技术而言,节点服务器还响应于节点服务器对应的客户服务器对软件配置内容的请求,当节点服务器从服务器获取到客户服务器请求的新的软件配置内容时,对节点服务器和客户服务器的软件配置内容都进行更新,以保证客户服务器能及时获取到所需的软件配置内容。
本发明第五实施方式涉及一种软件配置推送方法,应用于源服务器,具体流程如图5所示,包括:
步骤501,检测源服务器内存储的软件配置内容是否更新;若是,执行步骤502;若否,执行步骤501。
步骤502,向源服务器对应的节点服务器主动推送软件配置内容的增量更新数据。
下面对本实施方式的软件配置获取方法的实现细节进行具体的说明,以下内容仅为方便理解提供的实现细节,并非实施本方案的必须。
具体地说,源服务器检测源服务器内存储的软件配置内容是否更新;在实际应用中,可由运维人员手动向源服务器上传更新的软件配置内容。当源服务器检测到有软件配置内容的更新后,主动向对应的节点服务器推送增量更新的数据,而无需等待节点服务器的主动拉取操作,避免了软件配置内容传输时效性差、效率低的问题,有效提升了软件配置内容分发传输的效率。
更优的,节点服务器可预先向源服务器订阅节点服务器对应的软件配置内容,从而源服务器在检测到有软件配置内容更新后,仅向订阅了该软件配置内容的节点服务器主动推送增量更新数据,有效控制了源服务器的数据传输量,也避免了节点服务器接收不需要的增量更新数据而造成的无用工作量和数据冗余,从而简化了软件配置推送流程,提升了软件配置内容分发传输的效率。
本实施方式相对于现有技术而言,当源服务器检测到有软件配置内容的更新后,主动向对应的节点服务器推送增量更新的数据,而无需等待节点服务器的主动拉取操作,避免了软件配置内容传输时效性差、效率低的问题,有效提升了软件配置内容分发传输的效率。
本发明第六实施方式涉及一种软件配置系统,包括:源服务器集群及节点服务器,所述源服务器集群包括:与预设的产品线一一对应的源服务器组,每组内包括至少两个互相备份的源服务器,每组内的所述源服务器中存储有与所述预设的产品线对应的软件配置内容,且所述源服务器根据所述软件配置内容对应的应用服务类型将所述软件配置内容分类存储。
本实施方式中的软件配置系统可参见图6,如图6所示:软件配置系统包括若干个预设的产品线(产品线A至产品线N),在实际应用中,产品线具体可指一群同一技术领域的产品,或针对同一客户群的产品等,例如点播产品线和直播产品线;各产品线对应有源服务器组,每组内包括至少两个互相备份的源服务器作为主服务器(例如产品线A对应的源服务器组包括源服务器1和源服务器2);各源服务器对应有节点服务器(如源服务器1对应的节点服务器1至节点服务器n),各产品线对应的源服务器组组成源服务器集群(如源服务器1至源服务器y组成源服务器集群)。
每组内的源服务器中存储有与预设的产品线对应的软件配置内容,且源服务器根据所述软件配置内容对应的应用服务类型将软件配置内容分类存储;在一个实例中,可参见如图7所示的源服务器的存储关系图,以产品线A的源服务器1为例,产品线A为点播产品线,产品线A对应的软件配置内容分别属于应用服务类型1至应用服务类型n(如图片应用服务类型、视频应用服务类型及音频应用服务类型),每个应用服务类型均包括至少一种软件配置内容,则源服务器1内包括对应于应用服务类型1至应用服务类型n的存储目录(如图片应用服务类型的存储目录、视频应用服务类型的存储目录及音频应用服务类型的存储目录),每个应用服务类型的存储目录存储有至少一种软件配置内容(如软件配置内容1至软件配置内容n)。通过根据应用服务类型来存储软件配置内容,优化精简了对软件配置内容的管理存储方式,也便于快速查找到同一类型的软件配置内容进行更新和推送等操作。
源服务器用于当检测到源服务器内存储的软件配置内容更新后,向源服务器对应的节点服务器主动推送软件配置内容的增量更新数据,如图6所示,当源服务器1内存储的软件配置内容更新后,向源服务器1对应的节点服务器1至节点服务器n主动推送软件配置内容的增量更新数据,供节点服务器进行更新。
本实施方式相对于现有技术而言,按产品线对分配互相备份的源服务器,以保证源服务器能为产品线提供正常的服务;另外,源服务器根据应用服务类型对软件配置内容分类存储,优化精简了对软件配置内容的管理存储方式,便于快速查找到同一类型的软件配置内容进行更新和推送等操作。
本发明第七实施方式涉及一种节点服务器,如图8所示,包括:至少一个处理器801;以及,与至少一个处理器801通信连接的存储器802;其中,存储器802存储有可被至少一个处理器801执行的指令,指令被至少一个处理器801执行,以使至少一个处理器801能够执行上述软件配置获取方法。
其中,存储器802和处理器801采用总线方式连接,总线可以包括任意数量的互联的总线和桥,总线将一个或多个处理器和存储器802的各种电路连接在一起。总线还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其他电路连接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。总线接口在总线和收发机之间提供接口。收发机可以是一个元件,也可以是多个元件,比如多个接收器和发送器,提供用于在传输介质上与各种其他装置通信的单元。经处理器801处理的数据通过天线在无线介质上进行传输,进一步,天线还接收数据并将数据传送给处理器801。
处理器801负责管理总线和通常的处理,还可以提供各种功能,包括定时,外围接口,电压调节、电源管理以及其他控制功能。而存储器802可以被用于存储处理器801在执行操作时所使用的数据。
本发明第九实施方式涉及一种计算机可读存储介质,存储有计算机程序。计算机程序被处理器执行时实现上述软件配置获取方法实施例。
即,本领域技术人员可以理解,实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本申请各个实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
本领域的普通技术人员可以理解,上述各实施方式是实现本发明的具体实施例,而在实际应用中,可以在形式上和细节上对其作各种改变,而不偏离本发明的精神和范围。
Claims (10)
1.一种软件配置获取方法,其特征在于,应用于节点服务器,包括:
判断是否接收到源服务器主动推送的软件配置内容的增量更新数据;
若否,向服务器请求所述节点服务器对应的软件配置内容,直至从所述服务器接收到所述节点服务器对应的软件配置内容;所述服务器包含所述源服务器或与所述节点服务器处于同一网络内的其他节点服务器;
其中,所述向服务器请求所述节点服务器对应的软件配置内容,包括:
向所述源服务器请求所述节点服务器对应的软件配置内容;
若向所述源服务器请求失败,则向所述其他节点服务器请求所述节点服务器对应的软件配置内容。
2.根据权利要求1所述的软件配置获取方法,其特征在于,还包括:
判断接收到的所述节点服务器对应的软件配置内容是否是最新的软件配置内容;
若是,则根据接收到的所述节点服务器对应的软件配置内容,更新所述节点服务器对应的软件配置内容。
3.根据权利要求1所述的软件配置获取方法,其特征在于,还包括:
在接收到所述源服务器主动推送的软件配置内容的增量更新数据后,判断所述软件配置内容的增量更新数据是否正确;
若是,则根据所述软件配置内容的增量更新数据,更新所述节点服务器对应的软件配置内容。
4.根据权利要求2或3任一项所述的软件配置获取方法,其特征在于,所述节点服务器对应有客户服务器,所述节点服务器对应的软件配置内容由每个所述对应的客户服务器对应的软件配置内容组成;所述方法还包括:
将所述节点服务器对应的更新后的软件配置内容推送至与所述更新后的软件配置内容对应的客户服务器。
5.根据权利要求1所述的软件配置获取方法,其特征在于,还包括:
当接收到所述节点服务器对应的客户服务器发送的对软件配置内容的请求时,判断所述节点服务器内存储的软件配置内容中是否包括所述客户服务器请求的软件配置内容;
若否,则向所述服务器请求所述客户服务器请求的软件配置内容;
将从所述服务器接收到的所述客户服务器请求的软件配置内容推送至所述客户服务器。
6.根据权利要求5所述的软件配置获取方法,其特征在于,还包括:
将从所述服务器接收到的所述客户服务器请求的软件配置内容存储至所述节点服务器。
7.根据权利要求1所述的软件配置获取方法,其特征在于,所述判断是否接收到源服务器主动推送的软件配置内容的增量更新数据,包括:
根据预设的更新周期,判断是否接收到源服务器主动推送的软件配置内容的增量更新数据。
8.一种软件配置系统,其特征在于,包括:源服务器集群及节点服务器,所述源服务器集群包括:与预设的产品线一一对应的源服务器组,每组内包括至少两个互相备份的源服务器,每组内的所述源服务器中存储有与所述预设的产品线对应的软件配置内容,且所述源服务器根据所述软件配置内容对应的应用服务类型将所述软件配置内容分类存储;
所述源服务器用于当检测到所述源服务器内存储的软件配置内容更新后,向所述源服务器对应的节点服务器主动推送所述软件配置内容的增量更新数据;
所述节点服务器用于判断是否接收到所述源服务器主动推送的所述增量更新数据,若否,向服务器请求所述节点服务器对应的软件配置内容,直至从所述服务器接收到所述节点服务器对应的软件配置内容,所述服务器包含所述源服务器或与所述节点服务器处于同一网络内的其他节点服务器;
其中,所述向服务器请求所述节点服务器对应的软件配置内容,包括:
向所述源服务器请求所述节点服务器对应的软件配置内容;
若向所述源服务器请求失败,则向所述其他节点服务器请求所述节点服务器对应的软件配置内容。
9.一种节点服务器,其特征在于,包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1至7任一项所述的软件配置获取方法。
10.一种计算机可读存储介质,存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求要求1至7任一项所述的软件配置获取方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910495658.7A CN110417850B (zh) | 2019-06-10 | 2019-06-10 | 软件配置获取方法、系统、服务器及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910495658.7A CN110417850B (zh) | 2019-06-10 | 2019-06-10 | 软件配置获取方法、系统、服务器及介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110417850A CN110417850A (zh) | 2019-11-05 |
CN110417850B true CN110417850B (zh) | 2022-08-12 |
Family
ID=68358913
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910495658.7A Active CN110417850B (zh) | 2019-06-10 | 2019-06-10 | 软件配置获取方法、系统、服务器及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110417850B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111124465B (zh) * | 2019-11-28 | 2023-06-20 | 武汉虹信技术服务有限责任公司 | 一种跨网络c/s程序远程升级方法及系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1758607A (zh) * | 2005-11-10 | 2006-04-12 | 中国工商银行 | 分布式业务系统中的软件版本升级系统及其方法 |
CN103685511A (zh) * | 2013-12-13 | 2014-03-26 | 北京奇虎科技有限公司 | 一种数据分发方法、装置及系统 |
CN109150570A (zh) * | 2017-06-27 | 2019-01-04 | 阿里巴巴集团控股有限公司 | 更新方法、系统、端节点及电子设备 |
CN109450969A (zh) * | 2018-09-27 | 2019-03-08 | 北京奇艺世纪科技有限公司 | 从第三方数据源服务器中获取数据的方法、装置和服务器 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10630529B2 (en) * | 2016-12-29 | 2020-04-21 | Kodiak Networks, Inc. | System and method for push-to-talk (PTT) in mobile edge computing (MEC) |
-
2019
- 2019-06-10 CN CN201910495658.7A patent/CN110417850B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1758607A (zh) * | 2005-11-10 | 2006-04-12 | 中国工商银行 | 分布式业务系统中的软件版本升级系统及其方法 |
CN103685511A (zh) * | 2013-12-13 | 2014-03-26 | 北京奇虎科技有限公司 | 一种数据分发方法、装置及系统 |
CN109150570A (zh) * | 2017-06-27 | 2019-01-04 | 阿里巴巴集团控股有限公司 | 更新方法、系统、端节点及电子设备 |
CN109450969A (zh) * | 2018-09-27 | 2019-03-08 | 北京奇艺世纪科技有限公司 | 从第三方数据源服务器中获取数据的方法、装置和服务器 |
Also Published As
Publication number | Publication date |
---|---|
CN110417850A (zh) | 2019-11-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3490224B1 (en) | Data synchronization method and system | |
US20150215400A1 (en) | File Upload Method And System | |
CN108173774B (zh) | 一种客户端的升级方法及系统 | |
EP3063925B1 (en) | Synchronizing event history for multiple clients | |
CN111083193A (zh) | 长连接消息发送方法、服务器及存储介质 | |
CN108023953B (zh) | Ftp服务的高可用实现方法和装置 | |
US20140082135A1 (en) | Apparatus and method for providing content, and system for providing content with the said apparatus | |
JP4320444B2 (ja) | データ配布システム、データ配布方法、及びデータ配布プログラムならびにプログラム記録媒体 | |
CN102833337A (zh) | 一种ftp文件上传、下载方法及装置 | |
CN103209223A (zh) | 分布式应用会话信息共享方法、系统和应用服务器 | |
CN106713391B (zh) | 一种session信息的共享方法和共享系统 | |
EP3499846A1 (en) | File distribution method, file download method, distribution server, client, and system | |
CN112118315A (zh) | 数据处理系统、方法、装置、电子设备和存储介质 | |
CN111221469B (zh) | 同步缓存数据的方法、装置和系统 | |
CN101848188A (zh) | 对数据块校验信息进行更新的方法和装置 | |
US20150006622A1 (en) | Web contents transmission method and apparatus | |
CN105959420A (zh) | 多客户端元数据同步更新方法及系统 | |
CN107580021A (zh) | 一种文件传输的方法和装置 | |
CN110417850B (zh) | 软件配置获取方法、系统、服务器及介质 | |
CN110798495B (zh) | 用于在集群架构模式下端到端的消息推送的方法和服务器 | |
CN103186536A (zh) | 一种调度数据共享装置的方法及系统 | |
US11218371B2 (en) | Method and apparatus for performing communication in internet of things | |
EP3579526A1 (en) | Resource file feedback method and apparatus | |
CN111651419B (zh) | 数据存储方法、装置及存储介质 | |
US20150095496A1 (en) | System, method and medium for information processing |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |