一种数据更新方法、客户端及服务端与流程

文档序号:12376812阅读:364来源:国知局
一种数据更新方法、客户端及服务端与流程

本发明涉及一种移动通信和互联网技术领域,尤其涉及一种数据更新方法、客户端及服务端。



背景技术:

随着移动互联网的发展,打车软件的普及,人们的打车习惯已经被深刻地改变。在打车应用中,每次打车时用户都需要查看一些基础数据,例如,基础数据可以为定价数据,其中该定价数据可以包括不同的城市、不同的租赁时间以及不同的车型对应的打车价格。再例如,基础数据还可以为文案介绍,其中该文案介绍可以包括车型的界定以及对租赁时间的界定等。

在相关的现有技术中,每次客户发起打车请求时,服务器返回给客户端的数据中都包含所有的基础数据。但是,当这些基础数据没有发生改动时,由于这些基础数据的数据量较大,因此,不仅浪费了客户端的数据流量,而且也会导致客户端的反应时间变长,用户的体验较差。



技术实现要素:

针对以上技术不足,本发明提供了一种数据更新方法、及相应的服务端、客户端。本发明技术方案大大降低了客户端和服务端的通信数据流量,也提高了客户端的反应速度。

本发明是这样实现的:一种数据更新方法,包括:

服务端接收客户端发来的数据更新请求,所述数据更新请求包括客户端的本地数据的版本号;

服务端判断客户端的本地数据的版本号与自身存储的最新数据的版本号是否相同,如果相同,服务端向客户端发送数据未改变的通知信息;

如果不同,服务端向客户端发送更新数据包,使得客户端对本地数据进行更新。

进一步地,服务端在判断客户端的本地数据的版本号与自身存储的最新数据的版本号不同后,根据客户端的本地数据的版本号获取客户端的本地数据,将客户端的本地数据与自身存储的最新数据进行比对,得出更新数据,并生成更新数据包,所述更新数据包包括更新数据及最新数据的版本号。

进一步地,所述数据未改变的通知信息为304状态码。

进一步地,所述客户端的本地数据、服务端的最新数据包括如下项目内容:不同的租车方案对应的定价信息、对租车方案的介绍信息。

本发明还公开了一种数据更新方法,包括:

客户端向服务端发送数据更新请求,所述数据更新请求包括客户端本地数据的版本号,使得服务端判断客户端本地数据的版本号与服务端中最新数据的版本号是否相同;

如果相同,客户端接收服务端发来的数据未改变的通知信息;

如果不同,客户端接收服务端发来的更新数据包;

客户端根据更新数据包对本地数据以及本地数据的版本号进行更新。

进一步地,服务端在判断客户端的本地数据的版本号与自身存储的最新数据的版本号不同后,根据客户端的本地数据的版本号获取客户端的本地数据,将客户端的本地数据与自身存储的最新数据进行比对,得出更新数据,并生成更新数据包,所述更新数据包包括更新数据及最新数据的版本号。

进一步地,所述数据未改变的通知信息为304状态码。

进一步地,所述本地数据、最新数据包括如下项目内容:不同的租车方案对应的定价信息、对租车方案的介绍信息。

本发明还公开了一种服务端,包括:

存储单元,用于存储最新数据及最新数据的版本号;

接收单元,用于接收客户端发来的数据更新请求,所述数据更新请求包括客户端的本地数据的版本号;

比对单元,用于比对客户端的本地数据的版本号和服务端中最新数据的版本号是否相同,并将判断结果发送至处理单元;

处理单元,用于根据数据更新请求以及存储单元中的最新数据、最新数据的版本号,生成更新数据包,或者生成数据未改变的通知信息;

发送单元,用于将更新数据包或者数据未改变的通知信息发送至客户端。

进一步地,所述存储单元还用于存储客户端的本地数据及对应的版本号,所述处理单元具体用于根据客户端的本地数据的版本号获取存储单元中客户端的本地数据,将客户端的本地数据与存储单元中最新数据进行比对,得出更新数据,并生成更新数据包,所述更新数据包包括更新数据及最新数据的版本号。

进一步地,所述数据未改变的通知信息为304状态码。

进一步地,所述本地数据、最新数据包括如下项目内容:不同的租车方案对应的定价信息、对租车方案的介绍信息。

本发明还公开了一种客户端,包括:

存储单元,用于存储客户端的本地数据及本地数据的版本号;

发送单元,用于向服务端发送数据更新请求,所述数据更新请求包括客户端本地数据的版本号;

接收单元,用于接收服务端发来的数据更新包或者数据未改变的通知信息;

更新单元,用于根据数据更新包对客户端的本地数据以及本地数据的版本号进行更新。

进一步地,所述更新数据包的生成过程如下:服务端在判断客户端的本地数据的版本号与自身存储的最新数据的版本号不同后,根据客户端的本地数据的版本号获取客户端的本地数据,将客户端的本地数据与自身存储的最新数据进行比对,得出更新数据,并生成更新数据包,所述更新数据包包括更新数据及最新数据的版本号。

进一步地,所述数据未改变的通知信息为304状态码。

进一步地,所述本地数据、最新数据包括如下项目内容:不同的租车方案对应的定价信息、对租车方案的介绍信息。

与现有技术相比,本发明的有益效果如下:本发明的技术方案将基础数据保存到客户端的本地内存上并且基础数据包含与其对应的数据版本号。当用户需要查看本地数据是否为最新数据时,只需将本地数据版本号发送给服务端即可,服务端也只需判断本地数据版本号与更新数据版本号是否相同,即可判断本地数据与更新数据是否相同。若相同,则只需要发送一条通知消息至客户端;若不同,则向客户端仅发送更新数据,而不是全部的基础数据。

本发明技术方案大大降低了客户端与服务端之间不必要的数据通信,降低了客户端的数据流量的使用量,同时提高了客户端和服务端的工作效率。

附图说明

图1为本发明实施例提供的一种数据更新方法的流程示意图;

图2为本发明实施例提供的另一种数据更新方法的流程示意图;

图3为本发明实施例提供的另一种数据更新方法的流程示意图;

图4为本发明实施例中服务端的结构示意图;

图5为本发明实施例中客户端的结构示意图。

具体实施方式

为了使本发明所要解决的技术问题、技术方案及有益效果更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。

本发明实施例提供的一种数据更新方法,如图1所示,包括:

S101:服务端接收客户端发来的数据更新请求,所述数据更新请求包括客户端的本地数据的版本号;

S102:服务端判断客户端的本地数据的版本号与自身存储的最新数据的版本号是否相同;若相同,进入步骤S103,否则,进入步骤S104;

S103:服务端向客户端发送数据未改变的通知信息;

S104:服务端向客户端发送更新数据包,使得客户端对本地数据进行更新。

基于同一发明构思,本发明实施例还提供一种客户端侧的数据更新方法,如图2所示,包括:

S201:客户端向服务端发送数据更新请求,所述数据更新请求包括客户端本地数据的版本号,使得服务端判断客户端本地数据的版本号与服务端中最新数据的版本号是否相同,若相同,则进入步骤S202,否则,进入步骤S203;

S202:客户端接收服务端发来的数据未改变的通知信息;

S203:客户端接收服务端发来的更新数据包,客户端根据更新数据包对本地数据以及本地数据的版本号进行更新。

本发明实施例提供的一种数据更新方法,由客户端向服务端发送数据更新请求,其中携带客户端的本地数据的版本号。服务端将客户端的本地数据的版本号与自身数据库中最新数据的版本号进行对比,若一致,则说明客户端的本地数据是最新的,若不一致,则说明客户端的本地数据需要进行更新,此时,服务端向客户端发送更新数据包,使得客户端根据更新数据包对本地数据及相应的版本号进行更新。

本发明技术方案采用数据版本号代替数据内容,大大降低了客户端与服务端之间不必要的数据通信,降低了客户端的数据流量的使用量,同时提高了客户端和服务端的工作效率。

为了使本领域技术人员能更清楚地理解本发明实施例提供的技术方案,下面通过具体的实施例,对本发明提供的一种数据更新方法进行详细说明,如图3所示,该方法包括:

S301:客户端向服务端发送数据更新请求,所述数据更新请求包括客户端的本地数据的版本号。

客户端为耦合于用户移动终端中的应用程序,移动终端为手机或平板电脑等电子设备。移动终端的内存中加载有本地数据及对应的版本号,示例性地,所述本地数据包括如下项目内容:不同的租车方案对应的定价信息(例如北京、豪华车型、日租:1000元/天,上海、经济车型、月租:5000元/月等)、对租车方案的介绍信息(例如对车型等级的界定、对租赁时间的界定)等。

作为应用程序的客户端,调用移动终端内存中的本地数据的版本号,并生成数据更新请求,并将数据更新请求发送至服务端,所述数据更新请求中携带有客户端的身份标识以及本地数据的版本号。

S302:服务端判断客户端的本地数据的版本号与自身存储的最新数据的版本号是否相同,若相同,进入步骤S303,否则,进入步骤S304。

服务端数据库中存储有以往的基础数据,包括已经发送给客户端的数据内容以及相对应的版本号。当基础数据有更新时,例如对租车价格有调整或者车型有增加或变动或者租赁时间有调整时,服务端中的基础数据内容会更新,相应的数据版本号也会更新。

服务端将接收到的来自客户端的本地数据的版本号与当前的最新数据的版本号进行比对,若相同,则说明客户端的本地数据是最新的,若不同,则说明客户端的本地数据需要进行更新。

S303:服务端生成数据未改变的通知信息,并发送至客户端。

当服务端判断客户端的本地数据的版本号与当前最新数据的版本号相同时,只需要通知客户端数据未改变即可。示例性地,数据未改变的通知信息为304状态码。

S304:服务端生成更新数据包,并将更新数据包发送至客户端,客户端根据更新数据包对本地数据及本地数据的版本号进行更新。

当服务端判断客户端的本地数据的版本号与当前最新数据的版本号不同时,服务端根据客户端的本地数据的版本号从数据库中获取相应的客户端的本地数据,将客户端的本地数据与自身存储的最新数据进行比对,找出最新数据中的更新数据,并生成更新数据包,所述更新数据包包括更新数据及最新数据的版本号。

服务端将更新数据包发送至客户端,客户端根据更新数据包对本地数据的内容以及相应的版本号进行更新。客户端更新后的本地数据、版本号与服务端中最新数据和版本号相同。

基于同一发明构思,本发明实施例还公开了一种服务端,如图4所示,包括:

存储单元41,用于存储基础数据,包括已经发送给客户端的数据内容以及相对应的版本号和最新数据及最新数据的版本号,已经发送给客户端的数据内容以及相对应的版本号可能与最新数据及最新数据的版本号相同或不同。

存储单元41可通过服务器中的数据库来实现,实体装置上表现为存储器。

接收单元42,用于接收客户端发来的数据更新请求,所述数据更新请求包括客户端的本地数据的版本号。

示例性地,所述接收单元42与发送单元45可集成为服务器中的收发模块,通过无线电通讯网络(如GSM网、CDMA网)与客户端进行数据通信。

比对单元43,用于比对客户端的本地数据的版本号和服务端中最新数据的版本号是否相同,并将判断结果发送至处理单元44。

通过判断客户端的本地数据的版本号和服务端中最新数据的版本号是否相同来判断客户端的本地数据与服务端中的最新数据的内容是否相同。采用数据版本号来代替大量数据的传递,减少服务端的工作量,提高服务端的工作效率。判断结果包括本地数据版本号和更新数据版本号相同和不同。

处理单元44,用于根据数据更新请求以及存储单元中的最新数据、最新数据的版本号,生成更新数据包,或者生成数据未改变的通知信息。

所述处理单元44具体用于根据客户端的本地数据的版本号获取存储单元41中客户端的本地数据,将客户端的本地数据与存储单元41中最新数据进行比对,得到最新数据中更新的数据,并生成更新数据包,所述更新数据包包括更新数据及最新数据的版本号。

发送单元45,用于将更新数据包或者数据未改变的通知信息发送至客户端。

若客户端中的本地数据与服务端中的最新数据相同,则发送单元45向客户端发送数据未改变的通知信息,示例性地,该通知消息为304状态码;若客户端中的本地数据与服务端中的最新数据不同,则发送单元45向客户端发送更新数据包。

所述本地数据与最新数据有可能相同,也可能不同,示例性地,所述本地数据和最新数据包括如下项目内容:不同的租车方案对应的定价信息(例如北京、豪华车型、日租:1000元/天,上海、经济车型、月租:5000元/月等)、对租车方案的介绍信息(例如对车型等级的界定、对租赁时间的界定)等。

基于同一发明构思,本发明实施例还提供了一种客户端,所述客户端为耦合于手机中的应用程序,如图5所示,包括:

存储单元51,用于存储客户端的本地数据及本地数据的版本号。

示例性地,存储单元51为手机内存,可以包括至少一种类型的存储介质,包括卡型存储器(例如SD或DX存储器等等)、随机访问存储器(RAM)等。

数据更新请求生成单元52,用于调用存储单元51中的本地数据的版本号,并生成数据更新请求,所述数据更新请求携带有身份标识信息和客户端的本地数据的版本号。

发送单元53,用于向服务端发送数据更新请求。

示例性地,所述发送单元53与接收单元54集合成手机中的收发模块,该收发模块通常包括一个或多个组件,其允许客户端调用移动终端与无线通信系统或网络之间的无线电通信。例如收发模块可以包括移动通信单元、无线互联网单元和短程通信单元的任意一种或任意几种的组合。其中,

移动通信单元将无线电信号发送到基站(例如,接入点、节点B等等)、服务端从其接收无线电信号。这样的无线电信号可以包括语音通话信号、视频通话信号、或者根据文本和/或多媒体消息发送和/或接收的各种类型的数据。

无线互联网单元支持移动终端的无线互联网接入。该单元可以内部或外部地耦接到移动终端。该单元所涉及的无线互联网接入技术可以包括WLAN(无线LAN)(Wi-Fi)、Wibro(无线宽带)、Wimax(全球微波互联接入)、HSDPA(高速下行链路分组接入)等等。

短程通信模块是用于支持短程通信的模块。短程通信技术的一些示例包括蓝牙TM、射频识别(RFID)、红外数据协会(IrDA)、超宽带(UWB)、紫蜂TM等等。

接收单元54,用于接收服务端发来的数据更新包或者数据未改变的通知信息。

当存储单元51中的本地数据与服务端中的最新数据相同时,接收服务端发来的数据未改变的通知信息,示例性地,该通知信息为304状态码。当当存储单元51中的本地数据与服务端中的最新数据不同时,接收服务端发来的更新数据包。所述更新数据包由服务端根据客户端的本地数据的版本号获取其中的客户端的本地数据,将客户端的本地数据与最新数据进行比对,得到最新数据中更新的数据,并生成更新数据包,所述更新数据包包括更新数据及最新数据的版本号。

更新单元55,用于根据数据更新包对客户端的本地数据以及本地数据的版本号进行更新。

客户端接收到服务端发来的更新数据包后,更新单元54根据更新数据包对内存中的本地数据及相应的版本号进行更新,更新后,手机内存中本地数据及版本号与服务端中最新数据及版本号相同。

本发明技术方案,将数据量大且更新频次低的基础数据加载到客户端本地,并且每次由数据版本号代替数据内容来进行比对,当客户端的本地数据与服务端的最新数据版本号一致时,则服务端只需要向客户端返回一条通知信息即可,只有在本地数据与最新数据的版本号不一致时,服务端才向客户端反馈更新数据。这样就大大降低了客户端与服务端之间的数据交互量,节省了移动终端的数据流量,并且服务端也不需要比对所有的数据内容,而只需要比对数据版本号即可,大大提高了服务端和客户端的运行效率,提高了用户的体验度。

在此提供的算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。

在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。

类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。

本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。

此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。

本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的打车系统服务器中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。

应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。

显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

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