基于服务器的数据下发方法、客户端、服务器及系统与流程

文档序号:12134575阅读:1276来源:国知局
基于服务器的数据下发方法、客户端、服务器及系统与流程

本发明涉及通信数据处理的技术领域,特别涉及一种基于服务器的数据下发方法、客户端、服务器及系统。



背景技术:

在需要通过服务器与客户端进行同步的新兴计算应用领域,客户端经常需要结合服务器下发的配置数据来给用户提供服务。现有的方法通常是服务器在接收到客户端的查询请求后,将全量配置数据下发给客户端。所谓的全量数据可以理解为:不依赖待更新的数据就能对该待更新的数据进行更新的数据。也就是说,只要将全量数据传到数据处理设备中,并将它取代待更新的数据,就完成了数据的更新,而不需要进行任何其他的操作。可见,现有技术的服务器数据下发方法其实就是直接使用全量的更新后的数据下发给请求的客户端。例如,例如,客户端需要查询特定来电显示电话号码的归属地、所属运营商等相关数据信息,而服务器将所有来电显示电话号码的归属地、所属运营商等全量数据信息下发给客户端,客户端则需要在全量数据中查找到所需要的特定来电显示电话号码的归属地、所属运营商等相关数据信息。

然而,上述方法存在以下弊端:1、服务器将全量配置数据下发给客户端,数据传送量大,极大的占用网络带宽,耗费大量网络资源;2、下发的全量配置数据中可能包括客户端权限之外或需要保密的配置数据,不利于数据的保密,降低了数据的安全保密性能。



技术实现要素:

为克服现有的缺陷,本发明提出一种基于服务器的数据下发方法、客户端、服务器及系统,其能大大减小数据下发时所占用的网络带宽,有利于提高数据传送效率和实时性,而且有利于提高数据的安全保密性能。

根据本发明的一个方面,提出了一种基于服务器的数据下发方法,其特征在于,所述方法包括以下步骤:

服务器从配置数据库中读取配置数据,所述配置数据的内容包括数据主键、数值及版本号;

客户端向所述服务器发送数据查询请求,所述数据查询请求包括数据主键;所述服务器根据配置数据查询得到所述查询请求的数据主键的数值及版本号,并将所述数据主键的数值及版本号下发给客户端。

进一步,在上述的基于服务器的数据下发方法中,所述服务器根据配置数据查询得到所述查询请求的数据主键的数值及版本号,并将所述数据主键的数值及版本号下发给客户端的步骤之后还包括:

所述服务器将所述数据主键及版本号记录于用户数据数据库中。

进一步,在上述的基于服务器的数据下发方法中,所述数据查询请求还包括所述数据主键对应的最大版本号,所述服务器根据配置数据查询得到所述查询请求的数据主键的数值及版本号,并将所述数据主键的数值及版本号下发给客户端的步骤具体包括:

所述服务器从用户数据数据库中读取得到客户端发送的数据主键对应的版本号,比较所述用户数据数据库中该数据主键对应的版本号是否小于配置数据中该数据主键对应的版本号;

若是,则所述服务器将所述配置数据中该数据主键及版本号记录于用户数据数据库中,并将所述配置数据中该数据主键的数值及版本号下发给所述客户端;

若否,则所述服务器在判断所述数据查询请求中数据主键对应的最大版本 号小于用户数据数据库中所述数据主键对应的版本号的情况下,将用户数据数据库中所述数据主键、数值及版本号下发给客户端。

根据本发明的另一个方面,提出了一种客户端,所述客户端包括:

查询请求单元,用于向服务器发送数据查询请求,所述数据查询请求包括数据主键;

接收存储单元,用于接收并存储服务器根据配置数据查询得到所述查询请求的数据主键的数值及版本号。

根据本发明的另一个方面,提出了一种客户端,所述客户端包括:

查询请求单元,用于向服务器发送数据查询请求,所述数据查询请求包括数据主键及所述数据主键对应的最大版本号;

接收存储单元,用于接收并存储服务器根据配置数据查询得到所述查询请求的数据主键的数值及版本号;以及用于接收并存储服务器从用户数据数据库中读取的版本号大于所述最大版本号对应的数据主键、数值及版本号。

根据本发明的另一个方面,提出了一种服务器,所述服务器包括:

配置数据读取单元,用于从配置数据库中读取配置数据,所述配置数据的内容包括数据主键、数值及版本号;

接收请求单元,用于接收客户端的数据查询请求,所述数据查询请求包括数据主键;

查询单元,用于根据配置数据查询得到所述查询请求的数据主键的数值及版本号;

下发单元,用于将所述数据主键的数值及版本号下发给客户端。

进一步,在上述的服务器中,所述服务器还包括:

记录单元,用于将查询得到的数据主键及版本号记录于用户数据数据库中。

根据本发明的另一个方面,提出了一种服务器,所述服务器包括:

配置数据读取单元,用于从配置数据库中读取配置数据,所述配置数据的 内容包括数据主键、数值及版本号;

接收请求单元,用于接收客户端的数据查询请求,所述数据查询请求包括数据主键及所述数据主键对应的最大版本号;

用户数据读取单元,用于从用户数据数据库中读取得到客户端的所述数据主键对应的版本号;

第一比较单元,用于比较所述用户数据数据库中该数据主键对应的版本号是否小于所述配置数据中该数据主键对应的版本号;

第二比较单元,用于在用户数据数据库中该数据主键对应的版本号不小于所述配置数据中该数据主键对应的版本号的情况下,比较数据查询请求中数据主键对应的最大版本号小于用户数据数据库中所述数据主键对应的版本号;

下发单元,用于将用户数据数据库中或配置数据中所述数据主键、数值及版本号下发给客户端下发给客户端。

进一步,在上述的服务器中,所述服务器还包括:

记录单元,用于在所述用户数据数据库中该数据主键对应的版本号小于所述配置数据中该数据主键对应的版本号的情况下,将所述配置数据中该数据主键及版本号记录于用户数据数据库中。

根据本发明的另一个方面,提出了一种基于服务器的数据下发系统,所述系统包括如上述所述的客户端及服务器。

根据本发明的另一个方面,提出了一种基于服务器的数据下发系统,所述系统包括如上述所述的客户端及服务器。

本发明基于服务器的数据下发方法、客户端、服务器及系统,其大大减小了数据下发时所占用的网络带宽,提高了数据传送效率和实时性,同时也提高了数据的安全保密性能。

附图说明

图1为本发明基于服务器的数据下发方法的流程示意图;

图2为本发明基于服务器的数据下发方法一实施例的具体流程示意图;

图3为图2中客户端与服务器的架构示意图;

图4为本发明基于服务器的数据下发方法另一实施例的具体流程示意图;

图5为图4中客户端与服务器的架构示意图;

图6为本发明基于服务器的数据下发系统一实施例的结构示意图;

图7为本发明基于服务器的数据下发系统另一实施例的结构示意图。

为了能明确实现本发明的实施例的结构,在图中标注了特定的尺寸、结构和器件,但这仅为示意需要,并非意图将本发明限定在该特定尺寸、结构、器件和环境中,根据具体需要,本领域的普通技术人员可以将这些器件和环境进行调整或者修改,所进行的调整或者修改仍然包括在后附的权利要求的范围中。

具体实施方式

下面结合附图和具体实施例对本发明进行详细描述。

在以下的描述中,将描述本发明的多个不同的方面,然而,对于本领域内的普通技术人员而言,可以仅仅利用本发明的一些或者全部结构或者流程来实施本发明。为了解释的明确性而言,阐述了特定的数目、配置和顺序,但是很明显,在没有这些特定细节的情况下也可以实施本发明。在其他情况下,为了不混淆本发明,对于一些众所周知的特征将不再进行详细阐述。

请参阅图1,本发明提供了一种基于服务器的数据下发方法,所述方法包括以下步骤:服务器从配置数据库中读取配置数据,所述配置数据的内容包括数据主键、数值及版本号;客户端向所述服务器发送数据查询请求,所述数据查询请求包括数据主键;所述服务器根据配置数据查询得到所述查询请求的数据主键的数值及版本号,并将所述数据主键的数值及版本号下发给客户端。这样,本发明通过客户端在向服务器查询数据时,上传所述数据的主键, 服务器根据数据主键按需下发对应的数据,从而大大减小了数据下发时所占用的网络带宽,提高了数据传送效率和实时性,同时也提高了数据的安全保密性能。

请参阅图2,图2为本发明基于服务器的数据下发方法一实施例的流程示意图。本发明基于服务器的数据下发方法具体包括以下步骤:

步骤S101:服务器从配置数据库中读取配置数据,所述配置数据的内容包括数据主键、数值及版本号;

在具体实现时,请参阅图3,所述服务器200中连接有配置数据库300,所述配置数据库300用于存储配置数据,所述配置数据的内容可包括数据主键、数值及版本号,例如,所述配置数据包括:<key1,value1,ver1>、<key2,value2,ver2>及<key3,value3,ver3>。其中,key1、key2及key3分别为三项数据的数据主键,value1、value2及value3分别为三项数据的数值,ver1、ver2及ver3分别为三项数据的版本号;其中,所述数据主键为唯一标识一条数据项属性,所述版本号为每条数据项的版本,实际上,所述版本号为每一条数据项被修改时间戳。

所述配置数据库300中预先存储有配置数据,即将数据按照数据主键、数值及版本号配置好并存储于配置数据库300中;当服务器200启动后,所述服务器200将从配置数据库300中读取该配置数据,即所述服务器200将该配置数据从配置数据库300中加载到本地服务内存中,以等待客户端100的数据查询请求。

步骤S102:客户端向所述服务器发送数据查询请求,所述数据查询请求包括数据主键;

在具体实现时,当用户需要查询某一配置数据信息时,即通过客户端100向服务器200发送数据查询请求,所述数据查询请求包括客户端ID及数据主键;所述数据主键可用于唯一标识一条数据项属性,例如,在来电显示场景 的应用中,所述数据主键为需要查询的来电电话号码,即所述客户端将客户端ID、查询的来电电话号码打包进查询请求中一起发送给服务器。

步骤S103:所述服务器根据配置数据查询得到所述查询请求的数据主键的数值及版本号;

在具体实现时,所述服务器200在接收到所述客户端100发送的数据查询请求后,根据所述数据查询请求得到数据主键,并根据所述数据主键查询该数据主键是否存在于配置数据中,若是,则得到所述数据的数值及版本号;若否,则向客户端100反馈查询失败。例如,在来电显示场景的应用中,所述服务器根据所述来电电话号码查询到该来电电话号码对应的号码归属地及所属运营商信息。

步骤S104:所述服务器将所述数据主键及版本号记录于用户数据数据库中;

在具体实现时,请参阅图3,所述服务器200中还连接有用户数据数据库400,所述用户数据数据库400用于记录下发给客户端的数据主键及版本号,当所述服务器查询得到客户端ID1数据主键key1对应的数值value1及版本号ver1后,在客户端ID1下发过的数据记录中增加一条key1以及对应的版本ver1,即将ID1:<key1,ver1>写入到用户数据数据库400中。

步骤S105:所述服务器将所述数据主键的数值及版本号下发给所述客户端;

在具体实现时,所述服务器200将所述数据主键key1对应的数值value1及版本号ver1下发给所述客户端ID1,即返回数据<key1、value1、ver1>给客户端ID1。所述客户端ID1接收并保存服务器下发的数值及版本号,以便下次数据更新进行提示。

请参阅图4,图4为本发明基于服务器的数据下发方法另一实施例的流程示意图。本实施例中,所述客户端查询的配置数据有更新时,即数据主键对 应的数值及版本号有改变,即产生增量信息,所述服务器将该增量信息下发给客户端。所述基于服务器的数据下发方法具体包括以下步骤:

步骤S201:服务器从配置数据库中读取配置数据,所述配置数据的内容包括数据主键、数值及版本号;

在具体实现时,请参阅图5,当某一数据主键的对应的信息有更新变化时,例如后台运营人员修改数据主键key1的信息,此时,所述配置数据库300中增加该数据主键key1的版本从ver1变成ver4,即更新后数据主键对应的配置数据为<key1,value1,ver4>。

步骤S202:客户端向所述服务器发送数据查询请求,所述数据查询请求包括数据主键及所述数据主键对应的最大版本号;

在具体实现时,客户端ID1向服务器发送数据查询请求,所述数据查询请求包括数据主键key1及所述数据主键key1对应的版本号ver1。

步骤S203:所述服务器从用户数据数据库中读取得到客户端的所述数据主键对应的版本号,比较所述用户数据数据库中该数据主键对应的版本号是否小于所述配置数据中该数据主键对应的版本号,若否,则进行步骤S204;若是,则进行步骤S205;

在具体实现时,所述服务器先去用户数据数据库中查询客户端ID1是否有下发记录,读取得到下发给客户端的所述数据主键对应的最大版本号;接着,所述服务器比较下发的数据主键对应的最大版本号是否小于配置数据DB中该数据主键对应的版本号,若是,则表示该数据主键的对应信息有更新,需要下发更新数据。

步骤S204:所述服务器在判断所述数据查询请求中数据主键对应的最大版本号小于用户数据数据库中所述数据主键对应的版本号的情况下,将用户数据数据库中所述数据主键、数值及版本号下发给客户端;

在具体实现时,所述服务器200在步骤S203中判断配置数据中该数据主 键对应的版本号无更新后,为了保证客户端收到下发的数据,所述服务器200进一步比较所述数据查询请求中数据主键对应的最大版本号是否小于用户数据数据库400中所述数据主键对应的版本号,若是,则所述服务器200将用户数据数据库400中版本号大于所述最大版本号对应的数据全部给客户端100下发一次,并且更新用户数据数据库400中所述数据主键对应的版本号。

步骤S205:所述服务器将所述配置数据中该数据主键及版本号记录于用户数据数据库中,并将所述配置数据中该数据主键的数值及版本号下发给所述客户端。

在具体实现时,当发现所述配置数据中该数据主键对应的信息有更新时,所述服务器200将所述数据主键key1对应更新后的数值value1及版本号ver4下发给所述客户端ID1,即返回数据<key1、value1、ver4>给客户端ID1。所述客户端ID1接收并保存服务器下发的数值及版本号,以便下次数据更新进行提示。

需要说明的是,对于一个模块或软件来说,客户端不用保存每一条主键数据的版本,只用存一个总体的版本,所述服务器会缓存已经给客户端下发的主键的版本。

请参阅图6,本发明还提供一种客户端100,包括:

查询请求单元101,用于向服务器发送数据查询请求,所述数据查询请求包括数据主键;

接收存储单元102,用于接收并存储服务器根据配置数据查询得到所述查询请求的数据主键的数值及版本号。

请参阅图7,在另一实施例中,本发明提供的客户端100包括:

查询请求单元101,用于向服务器发送数据查询请求,所述数据查询请求包括数据主键及所述数据主键对应的最大版本号;

接收存储单元102,用于接收并存储服务器根据配置数据查询得到所述查 询请求的数据主键的数值及版本号;以及用于接收并存储服务器从用户数据数据库中读取的版本号大于所述最大版本号对应的数据主键、数值及版本号。

请参阅图6,本发明还提供一种服务器200,包括:

配置数据读取单元201,用于从配置数据库中读取配置数据,所述配置数据的内容包括数据主键、数值及版本号;

接收请求单元202,用于接收客户端的数据查询请求,所述数据查询请求包括数据主键;

查询单元203,用于根据配置数据查询得到所述查询请求的数据主键的数值及版本号;

下发单元204,用于将所述数据主键的数值及版本号下发给客户端。

所述服务器200还包括:

记录单元205,用于将查询得到的数据主键及版本号记录于用户数据数据库中。

请参阅图7,在另一实施例中,本发明提供的服务器200包括:

配置数据读取单元201,用于从配置数据库中读取配置数据,所述配置数据的内容包括数据主键、数值及版本号;

接收请求单元202,用于接收客户端的数据查询请求,所述数据查询请求包括数据主键及所述数据主键对应的最大版本号;

用户数据读取单元203,用于从用户数据数据库中读取得到客户端的所述数据主键对应的版本号;

第一比较单元204,用于比较所述用户数据数据库中该数据主键对应的版本号是否小于所述配置数据中该数据主键对应的版本号;

第二比较单元205,用于在用户数据数据库中该数据主键对应的版本号不小于所述配置数据中该数据主键对应的版本号的情况下,比较数据查询请求中数据主键对应的最大版本号小于用户数据数据库中所述数据主键对应的版 本号;

下发单元206,用于将用户数据数据库中或配置数据中所述数据主键、数值及版本号下发给客户端下发给客户端。

进一步,所述服务器200还包括:记录单元207,用于在所述用户数据数据库中该数据主键对应的版本号小于所述配置数据中该数据主键对应的版本号的情况下,将所述配置数据中该数据主键及版本号记录于用户数据数据库中。

请参阅图5及图6,本发明还提供一种基于服务器的数据下发系统,所述系统包括上述的客户端及服务器。

相比于现有技术,本发明基于服务器的数据下发方法、客户端、服务器及系统,其大大减小了数据下发时所占用的网络带宽,提高了数据传送效率和实时性,同时也提高了数据的安全保密性能。

最后应说明的是,以上实施例仅用以描述本发明的技术方案而不是对本技术方法进行限制,本发明在应用上可以延伸为其他的修改、变化、应用和实施例,并且因此认为所有这样的修改、变化、应用、实施例都在本发明的精神和教导范围内。

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