发明内容
为了解决上述问题,发明人构思将客户端通过缓存机制来存储时差数据(缓存全部数据的话量太大),在进行显示时,将时差数据通过参数的方式用请求数据的服务端接口带给服务端,使服务端计算及统计的数据保持完整,然后服务端将结果数据反馈至客户端完成实时显示。
根据本发明的第一方面,提供了一种优化客户端数据显示误差的服务端处理方法,包括如下步骤:
在接收到数据请求时,根据第一数据请求指令生成第一数据信息进行缓存;
在进行数据响应时,分别获取第一数据信息和第二数据信息,生成实时响应信息进行响应。
根据本发明的第二个方面,提供了一种优化客户端数据显示误差的服务器,包括:
请求接收模块,用于接收数据请求指令;
数据处理模块,用于根据数据请求指令进行数据处理,生成实时响应信息输出;其中,
请求接收模块包括第一请求接收单元,用于接收第一数据请求指令;
数据处理模块包括
第一数据信息缓存单元,用于在判断第一数据请求指令中包含时差数据参数时,生成第一数据信息进行缓存;
数据响应单元,用于根据接收到的数据请求指令,分别获取第一数据信息和第二数据信息,生成实时响应信息进行响应。
根据本发明的第三个方面,提供了能够进行实时数据显示的客户端,其特征在于,还包括:
缓存模块,用于获取需缓存的时差数据存储;
数据上报模块,用于在向服务端进行数据请求时,获取时差数据封装生成第一数据请求指令输出至服务端;
数据请求模块,用于接收服务端对第一数据请求指令的响应,生成第二数据指令输出至服务端;
实时显示模块,用于接收服务端对第二数据请求指令的响应,获取实时响应数据进行加载显示。
根据本发明的第四个方面,提供了一种电子设备,其包括:至少一个处理器,以及与至少一个处理器通信连接的存储器,其中,存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够执行上述客户端处理方法的步骤。
根据本发明的第五个方面,提供了一种存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述客户端处理方法的步骤。
根据本发明提供的方法、服务器及客户端,通过将时差数据在客户端进行临时存储,并将时差数据通过参数的方式传递给服务端进行缓存,使服务端计算及统计的数据保持完整,并且可以实现通过服务端将结果数据反馈至客户端完成实时显示。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
本发明可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、元件、数据结构等等。也可以在分布式计算环境中实践本发明,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
在本发明中,“模块”、“服务器”、“系统”等指应用于计算机的相关实体,如硬件、硬件和软件的组合、软件或执行中的软件等。详细地说,例如,元件可以、但不限于是运行于处理器的过程、处理器、对象、可执行元件、执行线程、程序和/或计算机。还有,运行于服务器上的应用程序或脚本程序、服务器都可以是元件。一个或多个元件可在执行的过程和/或线程中,并且元件可以在一台计算机上本地化和/或分布在两台或多台计算机之间,并可以由各种计算机可读介质运行。元件还可以根据具有一个或多个数据包的信号,例如,来自一个与本地系统、分布式系统中另一元件交互的,和/或在因特网的网络通过信号与其它系统交互的数据的信号通过本地和/或远程过程来进行通信。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”,不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
下面结合附图对本发明作进一步详细的说明。
图1示意性地显示了根据本发明一实施方式的优化客户端数据显示误差的服务端处理方法流程图,如图1所示,本实施例包括如下步骤:
步骤S101:在接收到数据请求时,根据第一数据请求指令生成第一数据信息进行缓存。第一数据请求指令实现为将数据向服务端进行上报的请求指令,其实现方式与现有的客户端向服务端上报或请求数据的方式相同,不同仅在于,在本发明实施例中是在请求数据的同时上报时差数据,具体实现可以为在请求数据的数据包中增加时差数据参数,这样,在接收到第一数据请求时,会首先判断第一数据请求指令中是否包含有时差数据参数,即请求指令中是否包含该参数字段,如果含有时差数据参数就获取该参数对应的时差数据生成第一数据信息进行缓存,其中,第一数据信息包括第一数据内容和第一数据映射,第一数据内容即为获取的时差数据,并且还为缓存的第一数据内容即时差数据配置第一数据映射,示例性地,该映射可以为键值映射例如映射为Key1,将每个第一数据内容与其对应的缓存地址形成映射。这样,获取第一数据内容的方式就可以实现为根据第一数据映射确定该数据对应的缓存地址,从对应的缓存地址便可以获取第一数据内容。
步骤S102:在进行数据响应时,分别获取第一数据信息和第二数据信息,生成实时响应信息进行响应。
示例性地,数据响应为对第一数据请求指令的响应。具体实现为:根据第一数据请求获取第二数据映射,其中,第二数据映射的获取与现有技术相同,即为在接收到客户端的数据请求时,从存储数据的服务器获取数据的方式,在对第一数据请求指令进行响应时,获取的为第二数据映射,示例性地,为存储数据的服务器中相应数据的存储地址键值映射例如为Key2。在获取了第二数据映射后,将根据第一数据映射和第二数据映射生成第三数据映射输出,即将第一数据映射的Key1值与第二数据映射的Key2值进行整合,示例性地,通过将第一数据映射的Key1值添加到第二数据映射的Key2值的末尾,形成具有Key2值+Key1值的第三数据映射,并将该第三数据映射作为实时响应信息返回给发送第一数据请求的客户端。这样,客户端在进行显示时,根据该第三数据映射就可以获取响应数据信息,即具有实时缓存数据的链接地址,该链接地址可以用于进行数据加载显示。
根据本实施例,可以实现将时差数据进行缓存,并形成可以访问的链接供客户端获取,该链接地址指向的数据同时包含服务器的实时数据和时差数据,使服务端计算及统计的数据保持完整,从而使得客户端能够在进行显示时,请求到实时数据进行显示,避免显示误差。
图2示意性地显示了根据本发明又一实施方式的优化客户端数据显示误差的服务端处理方法流程图,如图2所示,本实施例包括如下步骤:
步骤S201:接收第二数据请求指令。该数据请求指令指的是由客户端发出的数据加载的请求指令,即通过图1的处理后返回的第三数据映射,进行数据加载显示的请求,与现有的数据加载请求的处理方式相同,示例性地通过H5(移动端web页面)链接地址向服务器获取加载数据,不同仅在于,在本发明实施例中的第三数据映射参数不同与现有的仅包含了服务器原始数据的地址,本发明实施例的第三数据映射包括有完整的实时数据,即还包含对时差数据的加载请求。
步骤S202:在进行数据响应时,分别获取第一数据信息和第二数据信息,生成实时响应信息进行响应,数据响应为对第二数据请求指令的响应。
进行数据响应后,判断第二数据请求指令中是否包含第三数据映射参数,若包含第三数据映射,则根据对第三数据映射参数进行解析,由于第三数据映射封装有第一数据映射和第二数据映射,解析后就会生成第一数据映射和第二数据映射。
根据第一数据映射的映射关系获取第一数据内容,即时差数据,并根据第二数据映射获取第二数据内容,即数据存储服务器存储的普通原始数据内容。
根据第一数据内容的时差数据和第二数据内容的普通数据内容整容后生成完整的数据,并实时响应数据输出,示例性地通过将第一数据内容直接拼接在第二数据内容的末尾实现。
根据本实施例可以实现,为服务端进行减压,并且客户端还可以获取完整的数据,还可以实现服务端将结果数据实时反馈至客户端。
对于图1和图2的方法可以单独使用达到上述效果,还可以综合使用,示例性地,对于车载领域中的导航应用来说,由于在导航过程中存在的时差数据不完整会导致实时显示的导航路径有误差,因此对实时显示数据的时效性有较严格要求,这种场景下,就可以应用上述方法进行时差数据的缓存、上报和加载。该应用场景的实例可以为:在行驶过程中,导航应用客户端会将实时导航数据上传给服务端,服务端会接收由GPS导航发出的实时导航数据,将该导航数据根据映射关系进行存储,其中,存储是根据服务器架构进行相应的存储,可以参照现有技术实现;而在导航结束时,导航应用客户端会向服务端发送数据请求,以进行导航轨迹的实时显示,此时,导航应用客户端会通过第一数据请求指令,将在导航应用客户端存储的时差数据根据图1的方法进行封装,并向服务端发送第一数据请求指令。服务端接收到第一数据请求指令后会根据上述方法进行时差数据的缓存和映射,生成第一数据信息,并获取第二数据映射,基于第一数据信息和第二数据映射对客户端进行响应,即响应的数据为第三数据映射,该映射同时包含了第一数据映射和第二数据映射,因而实时性更好,克服了服务器端的数据误差。在接收到第三数据映射的响应后,客户端会通过H5链接进行数据加载以将实时数据在客户端进行实时显示,此时,客户端会通过H5链接发出加载数据的请求即第二数据请求指令,而服务端接收到该请求会将该实时导航数据根据映射进行解析,将时差数据即第一数据内容和服务器上存储的普通数据即第二数据内容,进行整合成完整数据,实时反馈至客户端以进行实时显示使用,这样显示的导航轨迹就是完整的实时数据,不存在因服务器误差导致的缺少数据的不良。
在优选实施例中,为了避免服务端即业务服务器中存储的时差数据过多,造成业务服务器的存储负担,可以设定时差数据的缓存时长,例如五分钟,在达到该缓存时长后,即将时差数据删除。
图3示意性地显示了根据本发明一实施方式的优化客户端数据显示误差的客户端处理方法流程图,如图3所示,本实施例包括如下步骤:
步骤S301:缓存时差数据。具体实现为,在客户端将时差数据进行缓存,其中,时差数据根据服务端的响应误差进行设定,例如对于某一任务,在执行时有三分钟的响应误差,则获取该三分钟内的数据作为时差数据进行缓存。
步骤S302:在向服务端进行数据请求时,获取时差数据封装生成第一数据请求指令输出至服务端。将时差数据根据与服务器进行数据交互的协议规则进行封装,并将含有时差数据参数的第一数据请求指令发送至服务端。
步骤S303:接收服务端对第一数据请求指令的响应,生成第二数据指令输出至服务端。在服务端对客户端发送的含有时差数据参数的第一数据请求指令响应后,会将该响应结果即第三数据映射输出至该H5,由H5根据该数据映射生成数据访问链接即第二数据指令传输至服务端。
步骤S304:接收服务端对第二数据请求指令的响应,获取实时响应数据进行加载显示。当接收到服务器的实时响应数据后,就会将封装有时差数据的实时响应数据进行解析,获取最终的完整实时数据内容进行显示。
优选地,在一些实施例中,在客户端进行实时响应数据的加载显示时,还会通过H5对实时响应数据进行去重校验,以保证更优的实时显示效果。
图4示意性显示了根据本发明一实施方式的优化客户端数据显示误差的服务器,如图4所示,
优化客户端数据显示误差的服务器包括:请求接收模块4和数据处理模块5。请求接收模块4用于接收数据请求指令;数据处理模块5用于根据数据请求指令进行数据处理,生成实时响应信息输出;其中,
请求接收模块4包括第一请求接收单元401,用于接收第一数据请求指令,即数据上报的指令。数据处理模块5包括第一数据信息缓存单元501、数据响应单元502,第一数据信息缓存单元501用于在判断第一数据请求指令中是否包含时差数据参数,当包含时差数据参数时,生成第一数据信息进行缓存,第一数据信息包括第一数据内容和第一数据映射,第一数据内容即为获取的时差数据,并且还为缓存的第一数据内容即时差数据配置第一数据映射。数据响应单元502用于根据接收到的数据请求指令,分别获取第一数据信息和第二数据信息,第二数据信息包括第二数据映射和第二数据内容,第二数据映射的获取与现有技术相同,即为在接收到客户端的数据请求时,从存储数据的服务器获取数据的方式,在对第一数据请求指令进行响应时,获取的为第一数据映射和第二数据映射,生成的实时响应数据为包含第一数据映射和第二数据映射的第三数据映射。
请求接收模块4还包括第二请求接收单元402。第二请求接收单元402,用于接收第二数据请求指令。并且,数据响应单元502包括第一请求响应组件5021和第二请求响应组件5022。第一请求响应组件5021用于在进行第一数据信息缓存后,分别获取第一数据映射和第二数据映射,生成第三数据映射输出,该第三数据映射的生成方式可以参照上述的方法部分对生成第三数据映射的描述;第二请求响应组件5022用于在判断第二数据请求指令中是否包含第三数据映射参数,当包含第三映射参数时,根据第三数据映射参数分别获取第一数据内容和第二数据内容,并将第一数据内容和第二数据内容进行整合成完整数据,实时反馈至客户端以进行实时显示使用,这样显示的结果如导航轨迹就是完整的实时数据,不存在因服务器误差导致的缺少数据的不良。
根据本实施例可以克服服务端因减压设计等各类设计导致客户端获取数据时出现的不完整性问题。使服务端计算及统计的数据保持完整,并将完整的结果数据实时反馈至客户端进行显示。
图5示意性地显示了根据本发明一实施方式的能够进行实时数据显示的客户端的原理框图,如图5所示,
能够进行实时数据显示的客户端7包括缓存模块701、数据上报模块702、数据请求模块703和实时显示模块704。缓存模块701用于获取需缓存的时差数据存储,获取的方式可以参照上述的方法部分。
数据上报模块702用于在向服务端进行数据请求时,获取时差数据,根据与服务器进行数据交互的协议规则进行封装,生成第一数据请求指令输出至服务端8。数据请求模块703用于接收服务端8对第一数据请求指令的响应,会将该响应结果即第三数据映射输出该H5,由H5根据该数据映射生成数据访问链接即第二数据指令传输至服务端8。实时显示模块704用于接收服务端8对第二数据请求指令的响应,获取实时响应数据进行加载显示。当实时显示模块704接收到服务端8的实时响应数据后,就会将封装有时差数据的实时响应数据进行解析,获取最终的完整实时数据内容进行显示。
根据本实施例的客户端可以通过缓存机制来存储时差数据(缓存全部数据的话量太大),并根据请求数据的服务端接口传输至服务端,使服务端计算及统计的数据保持完整,并且可以实时接收到服务端的发送的完整结果数据并进行显示。
在一些实施例中,本发明实施例提供一种非易失性计算机可读存储介质,所述存储介质中存储有一个或多个包括执行指令的程序,所述执行指令能够被电子设备(包括但不限于计算机,服务器,或者网络设备等)读取并执行,以用于执行本发明上述任一项优化客户端数据显示误差的服务端处理方法或客户端处理方法。
在一些实施例中,本发明实施例还提供一种计算机程序产品,计算机程序产品包括存储在非易失性计算机可读存储介质上的计算机程序,计算机程序包括程序指令,当所程序指令被计算机执行时,使计算机执行上述任一项优化客户端数据显示误差的服务端处理方法或客户端处理方法。
在一些实施例中,本发明实施例还提供一种电子设备,其包括:至少一个处理器,以及与至少一个处理器通信连接的存储器,其中,存储器存储有可被至少一个处理器执行的指令,指令被所述至少一个处理器执行,以使至少一个处理器能够执行优化客户端数据显示误差的服务端处理方法或客户端处理方法。
在一些实施例中,本发明实施例还提供一种存储介质,其上存储有计算机程序,该程序被处理器执行时优化客户端数据显示误差的服务端处理方法或客户端处理方法。
上述本发明实施例的优化客户端数据显示误差的服务端处理服务器可用于执行本发明实施例的优化客户端数据显示误差的服务端处理方法,并相应的达到上述本发明实施例的实现优化客户端数据显示误差的服务端处理方法所达到的技术效果,这里不再赘述。本发明实施例中可以通过硬件处理器(hardware processor)来实现相关功能模块。
图6是本申请另一实施例提供的执行优化客户端数据显示误差的服务端处理方法或客户端处理方法的电子设备的硬件结构示意图,如图6所示,该设备包括:
一个或多个处理器610以及存储器520,图6中以一个处理器610为例。
执行优化客户端数据显示误差的服务端处理方法或客户端处理方法的设备还可以包括:输入装置630和输出装置640。
处理器610、存储器620、输入装置630和输出装置640可以通过总线或者其他方式连接,图6中以通过总线连接为例。
存储器620作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块,如本申请实施例中的优化客户端数据显示误差的服务端处理方法或客户端处理方法对应的程序指令/模块。处理器610通过运行存储在存储器620中的非易失性软件程序、指令以及模块,从而执行服务器的各种功能应用以及数据处理或客户端的相应功能以及数据处理,即实现上述方法实施例优化客户端数据显示误差的服务端处理方法或客户端处理方法。
存储器620可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据优化客户端数据显示误差的服务端处理服务器或优化了数据显示误差的客户端的使用所创建的数据等。此外,存储器620可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实施例中,存储器620可选包括相对于处理器610远程设置的存储器,这些远程存储器可以通过网络连接至优化客户端数据显示误差的服务端处理服务器或优化了数据显示误差的客户端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
输入服务器630可接收输入的数字或字符信息,以及产生与优化客户端数据显示误差的服务端处理服务器或优化了数据显示误差的客户端的用户设置以及功能控制有关的信号。输出服务器640可包括显示屏等显示设备。
上述一个或者多个模块存储在所述存储器620中,当被所述一个或者多个处理器610执行时,执行上述任意方法实施例中的优化客户端数据显示误差的服务端处理方法或客户端处理方法。
上述产品可执行本申请实施例所提供的方法,具备执行方法相应的功能模块和有益效果。未在本实施例中详尽描述的技术细节,可参见本申请实施例所提供的方法。
本申请实施例的电子设备以多种形式存在,包括但不限于:
(1)移动通信设备:这类设备的特点是具备移动通信功能,并且以提供话音、数据通信为主要目标。这类终端包括:智能手机(例如iPhone)、多媒体手机、功能性手机,以及低端手机等。
(2)超移动个人计算机设备:这类设备属于个人计算机的范畴,有计算和处理功能,一般也具备移动上网特性。这类终端包括:PDA、MID和UMPC设备等,例如iPad。
(3)车载设备:这类设备可以应用于车载系统。该类设备包括:便携式车载导航设备、车载电话等。
(4)服务器:提供计算服务的设备,服务器的构成包括处理器、硬盘、内存、系统总线等,服务器和通用的计算机架构类似,但是由于需要提供高可靠的服务,因此在处理能力、稳定性、可靠性、安全性、可扩展性、可管理性等方面要求较高。
(5)其他具有数据交互功能的电子装置。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对相关技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。