CN114900424A - 数据热修复方法、装置、电子设备及存储介质 - Google Patents
数据热修复方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN114900424A CN114900424A CN202210594785.4A CN202210594785A CN114900424A CN 114900424 A CN114900424 A CN 114900424A CN 202210594785 A CN202210594785 A CN 202210594785A CN 114900424 A CN114900424 A CN 114900424A
- Authority
- CN
- China
- Prior art keywords
- data
- client
- server
- difference
- identifier
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 75
- 230000008439 repair process Effects 0.000 claims abstract description 151
- 230000004044 response Effects 0.000 claims description 57
- 230000006870 function Effects 0.000 claims description 33
- 230000008859 change Effects 0.000 claims description 19
- 238000012546 transfer Methods 0.000 claims description 13
- 238000005067 remediation Methods 0.000 claims description 8
- 238000004590 computer program Methods 0.000 claims description 4
- 238000011084 recovery Methods 0.000 claims 1
- 230000005540 biological transmission Effects 0.000 abstract description 9
- 238000004891 communication Methods 0.000 description 13
- 238000010586 diagram Methods 0.000 description 8
- 238000005516 engineering process Methods 0.000 description 7
- 230000007246 mechanism Effects 0.000 description 4
- 238000009877 rendering Methods 0.000 description 4
- 101150039239 LOC1 gene Proteins 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 238000013507 mapping Methods 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000001960 triggered effect Effects 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/06—Management of faults, events, alarms or notifications
- H04L41/0654—Management of faults, events, alarms or notifications using network fault recovery
- H04L41/0659—Management of faults, events, alarms or notifications using network fault recovery by isolating or reconfiguring faulty entities
- H04L41/0661—Management of faults, events, alarms or notifications using network fault recovery by isolating or reconfiguring faulty entities by reconfiguring faulty entities
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请提供一种数据热修复方法、装置、电子设备及存储介质。所述方法包括:在服务端完成热修复获取第一数据后与第二数据进行比对,得到差异数据并向客户端推送热修复消息。客户端根据热修复消息向服务端发送热修复请求,并接收服务端发送的与热修复请求对应的差异数据,基于差异数据进行数据更新展示。通过开启客户端的服务端推送功能,保证服务端在完成热修复后能够成功推送消息给客户端,避免了客户端在单向请求的情况下无法及时修复数据的问题。客户端接收到的差异数据仅为与自身对应的差异数据,实现了按需请求及按需修复,有效减少服务端至客户端的热修复数据传输时间,以及客户端的本地热修复时间,提升热修复效率。
Description
技术领域
本申请涉及数据修复技术,尤其涉及一种数据热修复方法、装置、电子设备及存储介质。
背景技术
热修复技术是指在不重启设备的情况下,在系统运行过程中,更新系统中的代码或者数据,使更新的代码和数据生效的方法。因其方便快捷的特点,被广泛用于已上线项目及开发生产环境中。
现有系统大多是基于超文本传输协议(HTTP,Hyper Text Transfer Protocol)实现从客户端向服务端的单向请求功能,这样就导致了服务端进行数据修复后,客户端的数据不能得到及时更新,只能等待客户端向服务端进行下一次请求时再对数据进行修复。此外,客户端每次向服务端请求时均请求全部数据,修复后需要将全部数据进行更新,以满足客户端系统的数据显示和图像渲染需求,修复效率低且渲染开销较大。
发明内容
有鉴于此,本申请的目的在于提出一种数据热修复方法、装置、电子设备及存储介质。
基于上述目的,本申请第一方面提供了一种数据热修复方法,应用于服务端,所述方法包括:
将在所述服务端的数据热修复完成后得到的第一数据与第二数据进行比较,以得到差异数据;其中,所述第二数据中包含在接收到已启用服务端推送功能的客户端的首次会话请求时创建的原始数据和/或表征所述原始数据的原始数据标识,所述差异数据中包含所述客户端对应的差异数据;所述第一数据为响应于所述服务端的数据热修复完成,更新所述第二数据得到的;所述差异数据表征所述第一数据与所述第二数据之间的数据变化;
将所述差异数据推送至所述客户端,使得所述客户端基于该差异数据进行数据更新展示;和/或
将更新数据标识对应的更新数据与原始数据标识对应的原始数据之间的差异数据推送至所述客户端;所述更新数据为响应于所述服务端的数据热修复完成,更新所述原始数据得到的,所述更新数据标识为响应于所述服务端的数据热修复完成,更新所述原始数据标识得到的。
可选的,所述方法还包括:
响应于对所述服务端的数据热修复完成,对所述第二数据进行更新以得到所述第一数据。
可选的,将所述差异数据推送至所述客户端,还包括:
向所述客户端推送热修复消息;
在接收到所述客户端响应于所述热修复消息的热修复请求后,将所述差异数据推送至所述客户端。
可选的,所述第二数据包括热修复前的第二数据表,所述第一数据包括热修复后的第一数据表,所述差异数据包括热修复后的第一数据表与热修复前的第二数据表之间的差异数据表。
可选的,所述方法还包括:
响应于接收到所述客户端发送的所述首次会话请求,根据所述首次会话请求创建所述原始数据和/或表征所述原始数据的原始数据标识,并将其发送至所述客户端,将所述原始数据和/或所述原始数据标识存储在所述第二数据表中。
可选的,在响应于接收到所述客户端发送的所述首次会话请求之后,包括:
为所述客户端创建会话控制连接,并生成与所述客户端对应的所述会话标识符,将客户端对应的会话标识符存储在所述第二数据表中。
可选的,客户端为多个,所述将所述差异数据推送至所述客户端,包括:
将不同客户端对应的差异数据分别推送至所述会话标识符指示的客户端。
可选的,所述将不同客户端对应的差异数据分别推送至所述会话标识符指示的客户端之前,包括:
向所述会话标识符指示的所述客户端推送热修复消息;
在接收到所述客户端响应于所述热修复消息的热修复请求后,从所述差异数据表中检索出与所述热修复请求中携带的客户端标识符匹配的所述会话标识符及与该会话标识符对应的所述差异数据。
可选的,在根据所述首次会话请求创建所述原始数据和/或表征所述原始数据的原始数据标识,并将其发送至所述客户端之后,包括:
响应于在预定时间内未接收到所述客户端发送的心跳消息,将所述客户端对应的所述会话标识符从所述第二数据表中删除,以更新所述第二数据表中会话标识符对应的客户端。
可选的,所述将所述原始数据和/或所述原始数据标识存储在所述第二数据表中,包括:
通过哈希表结构将所述原始数据和/或所述原始数据标识存储在所述第二数据表中。
可选的,还包括:
响应于所述客户端支持超文本传输协议HTTP/2,为所述客户端开启基于超文本传输协议HTTP2的服务端推送功能;
响应于所述客户端不支持超文本传输协议HTTP/2,建立与所述客户端的WebSocket连接,为所述客户端开启服务端的推送功能。
本申请的第二方面提供了一种数据热修复方法,应用于客户端,所述方法包括:
接收服务端发送的差异数据;其中,所述差异数据中包含所述客户端对应的差异数据;所述差异数据表征第一数据与第二数据之间的数据变化;所述第一数据为响应于所述服务端的数据热修复完成,更新所述第二数据得到的;所述第二数据中包含在接收到已启用服务端推送功能的所述客户端的首次会话请求时创建的原始数据和/或表征所述原始数据的原始数据标识;和/或
接收所述服务端推送的更新数据标识对应的更新数据与原始数据标识对应的原始数据之间的差异数据;所述更新数据为响应于所述服务端的数据热修复完成,更新所述原始数据得到的,所述更新数据标识为响应于所述服务端的数据热修复完成,更新所述原始数据标识得到的;
根据所述差异数据进行数据更新展示。
可选的,在接收服务端发送的差异数据之前,包括:
根据服务端推送的热修复消息向所述服务端发送热修复请求;所述热修复消息为响应于所述服务端的数据热修复完成,根据与所述差异数据对应的客户端生成的。
可选的,在根据服务端推送的热修复消息向所述服务端发送热修复请求之前,包括:
向所述服务端发送首次会话请求,并接受所述服务端根据所述首次会话请求反馈的所述原始数据,并根据所述原始数据在所述客户端的图形用户界面上进行数据展示。
本申请的第三方面提供了一种数据热修复方法,包括:
服务端将数据热修复完成后得到的第一数据与第二数据进行比较,以得到差异数据;其中,所述第二数据中包含在接收到已启用服务端推送功能的客户端的首次会话请求时创建的原始数据和/或表征所述原始数据的原始数据标识,所述差异数据中包含所述客户端对应的差异数据;所述第一数据为响应于所述服务端的数据热修复完成,更新所述第二数据得到的;所述差异数据表征所述第一数据与所述第二数据之间的数据变化;
服务端将所述差异数据推送至所述客户端;
客户端接收服务端推送的所述差异数据;和/或
客户端接收所述服务端推送的更新数据标识对应的更新数据与原始数据标识对应的原始数据之间的差异数据;所述更新数据为响应于所述服务端的数据热修复完成,更新所述原始数据得到的,所述更新数据标识为响应于所述服务端的数据热修复完成,更新所述原始数据标识得到的;
客户端根据所述差异数据进行数据更新展示。
本申请的第四方面提供了一种服务端,包括:
生成模块,被配置为将在所述服务端的数据热修复完成后得到的第一数据与第二数据进行比较,以得到差异数据;其中,所述第二数据中包含在接收到已启用服务端推送功能的客户端的首次会话请求时创建的原始数据和/或表征所述原始数据的原始数据标识,所述差异数据中包含所述客户端对应的差异数据;所述第一数据为响应于所述服务端的数据热修复完成,更新所述第二数据得到的;所述差异数据表征所述第一数据与所述第二数据之间的数据变化;
推送模块,被配置为将所述差异数据推送至所述客户端,使得所述客户端基于该差异数据进行数据更新展示;和/或
将更新数据标识对应的更新数据与原始数据标识对应的原始数据之间的差异数据推送至所述客户端;所述更新数据为响应于所述服务端的数据热修复完成,更新所述原始数据得到的,所述更新数据标识为响应于所述服务端的数据热修复完成,更新所述原始数据标识得到的。
本申请的第五方面提供了一种客户端,包括:
接收模块,被配置为接收服务端发送的差异数据;其中,所述差异数据中包含所述客户端对应的差异数据;所述差异数据表征第一数据与第二数据之间的数据变化;所述第一数据为响应于所述服务端的数据热修复完成,更新所述第二数据得到的;所述第二数据中包含在接收到已启用服务端推送功能的所述客户端的首次会话请求时创建的原始数据和/或表征所述原始数据的原始数据标识;和/或
接收所述服务端推送的更新数据标识对应的更新数据与原始数据标识对应的原始数据之间的差异数据;所述更新数据为响应于所述服务端的数据热修复完成,更新所述原始数据得到的,所述更新数据标识为响应于所述服务端的数据热修复完成,更新所述原始数据标识得到的;
更新模块,被配置为根据所述差异数据进行数据更新展示。
本申请的第六方面提供了一种数据热修复系统,包括:如上所述的服务端,以及如上所述的客户端。
本申请的第七方面提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如上所述的方法。
本申请的第八方面提供了一种计算机可读存储介质,所述计算机可读存储介质存储计算机指令,所述计算机指令用于使计算机执行如上所述的方法。
本申请提供的一种数据热修复方法、装置、电子设备及存储介质,在服务端完成热修复获取第一数据后与第二数据进行比对,得到差异数据并向客户端推送热修复消息。客户端根据热修复消息向服务端发送热修复请求,并接收服务端发送的与热修复请求对应的差异数据,基于差异数据进行数据更新展示。通过开启客户端的服务端推送功能,保证服务端在完成热修复后能够成功推送消息给客户端,避免了客户端在单向请求的情况下无法及时修复数据的问题。客户端接收到的差异数据仅为与自身对应的差异数据,实现了按需请求及按需修复,有效减少服务端至客户端的热修复数据传输时间,以及客户端的本地热修复时间,提升热修复效率。
附图说明
为了更清楚地说明本申请或相关技术中的技术方案,下面将对实施例或相关技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请一个实施例的数据热修复方法的流程示意图;
图2为本申请另一个实施例的数据热修复方法的流程示意图;
图3为本申请另一个实施例的数据热修复方法的流程示意图;
图4为本申请一个实施例的服务端的结构示意图;
图5为本申请另一个实施例的客户端的结构示意图;
图6为本申请实施例的电子设备硬件结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本申请进一步详细说明。
需要说明的是,除非另外定义,本申请实施例使用的技术术语或者科学术语应当为本申请所属领域内具有一般技能的人士所理解的通常意义。本申请实施例中使用的“第一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来区分不同的组成部分。“包括”或者“包含”等类似的词语意指出现该词前面的元件或者物件涵盖出现在该词后面列举的元件或者物件及其等同,而不排除其他元件或者物件。“连接”或者“相连”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电性的连接,不管是直接的还是间接的。“上”、“下”、“左”、“右”等仅用于表示相对位置关系,当被描述对象的绝对位置改变后,则该相对位置关系也可能相应地改变。
以下结合附图来详细说明本申请的实施例。
图1示出了本申请实施例的一种数据热修复方法100,应用于服务端,所述方法100包括以下步骤:
步骤102、将在所述服务端的数据热修复完成后得到的第一数据与第二数据进行比较,以得到差异数据;其中,所述第二数据中包含在接收到已启用服务端推送功能的客户端的首次会话请求时创建的原始数据和/或表征所述原始数据的原始数据标识,所述差异数据中包含所述客户端对应的差异数据;所述第一数据为响应于所述服务端的数据热修复完成,更新所述第二数据得到的;所述差异数据表征所述第一数据与所述第二数据之间的数据变化。
具体的,服务端在进行热修复时,用户可以根据实际工作需求向服务端发出热修复指令以触发服务端进行热修复,或可根据在服务端预置的自动程序触发服务端的热修复,本步骤对于热修复的触发机制不做具体限定。当服务端完成数据热修复后,得到第一数据,该第一数据记录了服务端经过数据热修复后的全部数据信息。所述第一数据为热修复后更新的所述第二数据。所述第二数据包括了与该服务端进行会话的客户端对应的原始数据和/或用以表征该原始数据的原始数据标识。此外,第二数据还可以包括与客户端对应的原始数据和原始数据标识之外的其他数据信息。客户端向服务端发送首次会话请求后,服务端根据该首次会话请求携带的具体请求信息创建与该客户端对应的原始数据和原始数据标识。将数据热修复后得到的第一数据与第二数据进行比较,可以得到差异数据,差异数据记录了在第一数据中相比于第二数据产生变化的数据。
对应对应步骤104、将所述差异数据推送至所述客户端,使得所述客户端基于该差异数据进行数据更新展示;和/或
将更新数据标识对应的更新数据与原始数据标识对应的原始数据之间的差异数据推送至所述客户端;所述更新数据为响应于所述服务端的数据热修复完成,更新所述原始数据得到的,所述更新数据标识为响应于所述服务端的数据热修复完成,更新所述原始数据标识得到的。
具体的,确定了差异数据后,服务端向客户端推送该差异数据。可选的,还可以将热修复后得到的更新数据与原始数据之间的差异数据推送至所述客户端。每个原始数据对应一个原始数据标识,原始数据更新的同时,其对应的原始数据标识更新为更新数据标识。更新数据与原始数据之间的差异数据为与客户端对应的差异数据。
需要说明的是,在本实施例中,客户端能够接收服务端推送差异数据的前提是,客户端已开启服务端推送功能,因此保证了客户端能够接收到所述服务端主动推送的数据,以便客户端及时进行数据更新。客户端只需接收所述差异数据,无需接收服务端此次热修复后得到的第一数据或更新数据,有效减少服务端至客户端的热修复数据传输时间,提升热修复效率。
在其他一些实施例中,第一数据、第二数据以及差异数据可以存储在数据库中,所述数据库可以为Postgres数据库,Postgres数据库是一个开源对象关系数据库管理系统,用于安全地存储数据。
综上,基于步骤102和步骤104实现了服务端与客户端数据热修复的及时同步,服务端完成数据热修复后能够主动推送差异数据至客户端,以使客户端进行数据的更新展示。服务端仅将此次数据热修复时发生变化的数据发送给客户端,而无需发送全部数据,有效减少数据传输时间。同时,客户端进行更新展示时只针对差异数据进行更新,无需对客户端的全部数据进行替换更新,减少了客户端本地数据更新时间,提升热修复效率。
在一些实施例中,所述方法还包括:
响应于对所述服务端的数据热修复完成,对所述第二数据进行更新以得到所述第一数据。
具体的,接收到热修复指令后,服务端开始进行数据热修复,当完成所述数据热修复后,存储在服务端的第二数据通过热修复进行了更新,得到第一数据。第一数据记录了服务端经过数据热修复后的全部数据信息。
在一些实施例中,将所述差异数据推送至所述客户端,还包括:
向所述客户端推送热修复消息;
在接收到所述客户端响应于所述热修复消息的热修复请求后,将所述差异数据推送至所述客户端。
具体的,服务端完成数据热修复并得到差异数据后,立即向客户端推送热修复消息,告知客户端已完成数据热修复,并可以向服务端发送请求以获取数据热修复后更新的数据。客户端根据热修复消息向服务端发送热修复请求,服务端接收到所述热修复请求后,将差异数据推送至所述客户端。本实施例还可适用于单线程客户端,例如浏览器。单线程客户端在同一时刻只能执行一件任务,若单线程客户端此时在执行计算任务,则无法接收客户端推送的差异数据。因此需要在单线程客户端空闲时,主动向服务端发送热修复请求以获取差异数据,并基于接收到的差异数据进行数据更新展示。若客户端为非单线程客户端,表示该客户端可以同时执行多个任务,则在无需发送热修复请求的前提下,可以直接接收服务端推送的差异数据。
在一些实施例中,所述第二数据包括热修复前的第二数据表,所述第一数据包括热修复后的第一数据表,所述差异数据包括热修复后的第一数据表与热修复前的第二数据表之间的差异数据表。
可以理解的是,第一数据、第二数据和差异数据皆可以按照数据表结构的形式进行存储,通过数据表结构存储可以清晰地将数据和数据标识进行对应。将第一数据和第二数据进行比对时,通过数据表结构可以快速确定差异数据,提高比对效率。
在一些实施例中,所述方法还包括:
响应于接收到所述客户端发送的所述首次会话请求,根据所述首次会话请求创建所述原始数据和/或表征所述原始数据的原始数据标识,并将其发送至所述客户端,将所述原始数据和/或所述原始数据标识存储在所述第二数据表中。
具体的,服务端接收到客户端发送的首次会话请求后,根据会话请求携带的请求信息创建原始数据,原始数据表征客户端即将在其可视化界面上进行展示的数据。同时,在创建原始数据时,还可以创建表征原始数据的原始数据标识,原始数据与原始数据标识一一对应。原始数据和/或原始数据标识创建完成后,发送至客户端,客户端根据原始数据进行数据展示。服务端将创建完成的原始数据和/或原始数据标识存储在第二数据表中,以便后续进行调用和比对分析。
在一些实施例中,在响应于接收到所述客户端发送的所述首次会话请求之后,包括:
为所述客户端创建会话控制连接,并生成与所述客户端对应的所述会话标识符,将客户端对应的会话标识符存储在所述第二数据表中。
具体的,在服务端与客户端之间进行数据传输之前,需要先建立连接。客户端向服务端发送首次会话请求,服务端建立一个与该客户端对应的会话控制session,同时,服务端会为该客户端生成一个全局唯一的会话标识符session_id,用来标识该客户端。在一具体示例中,当客户端打开浏览器进行网页浏览时,此次与服务端建立的连接为session_id_a。服务端将生成的会话标识符存储在第二数据表中,在第二数据表中将客户端与会话标识符进行对应存储。
在一些实施例中,客户端为多个,所述将所述差异数据推送至所述客户端,包括:将不同客户端对应的差异数据分别推送至所述会话标识符指示的客户端。
具体的,当与服务端进行通信的客户端为多个时,每个客户端与服务端首次建立连接时,均生成了一个与该客户端对应的会话标识符。差异数据中包含了多个客户端对应对应的差异数据,当服务端需要将不同客户端的差异数据进行推送时,则按照会话标识符指示的客户端分别进行推送,以避免出现推送数据错误的问题。
在一些实施例中,所述将不同客户端对应的差异数据分别推送至所述会话标识符指示的客户端之前,包括:
向所述会话标识符指示的所述客户端推送热修复消息;
在接收到所述客户端响应于所述热修复消息的热修复请求后,从所述差异数据表中检索出与所述热修复请求中携带的客户端标识符匹配的所述会话标识符及与该会话标识符对应的所述差异数据。
具体的,若存在多个与服务端通信的客户端,在进行差异数据的推送时,需要在差异数据表中检索出与每个客户端对应的差异数据之后,再进行差异数据的推送。在差异数据表中,与每个客户端对应的差异数据与该客户端的会话标识符对应存储。因此,当服务端接收到热修复请求后,只需在差异数据表中检索出与热修复请求中携带的客户端标识符匹配的所述会话标识符,即可查找到相应的差异数据。
此外,与前述实施例相同,如果客户端为单线程客户端,则需要服务端先向客户端推送热修复消息,接收到客户端的热修复请求后,再将差异数据推送至客户端。需要说明的是,服务端在向客户端推送热修复消息时,并不需要向与服务端通信的全部客户端推送热修复消息,只需向本次数据热修复后产生差异数据的对应客户端推送热修复消息即可。若差异数据表中的与会话标识符对应的差异数据为空,则无需向该会话标识符对应的客户端发送热修复消息,从而实现了服务端的按需推送。
在一些实施例中,在根据所述首次会话请求创建所述原始数据和/或表征所述原始数据的原始数据标识,并将其发送至所述客户端之后,包括:
响应于在预定时间内未接收到所述客户端发送的心跳消息,将所述客户端对应的所述会话标识符从所述第二数据表中删除,以更新所述第二数据表中会话标识符对应的客户端。
具体的,在客户端向服务端发送首次会话请求后,服务端向客户端返回原始数据的同时向客户端发送请求服务端的心跳机制,该心跳机制限定了客户端向服务端发送心跳消息的时限需求。在一具体示例中,客户端向服务端发送心跳消息的时间间隔可以设置为5秒,若服务端在15秒内未接收到客户端发送的心跳消息,则在服务端的第二数据表中删除与该客户端相关的会话标识符和原始数据,删除的目的是减少维护的客户端的数量,释放服务端资源。
在一些实施例中,所述将所述原始数据和/或所述原始数据标识存储在所述第二数据表中,包括:通过哈希表结构将所述原始数据和/或所述原始数据标识存储在所述第二数据表中。
哈希表是根据关键码值(关键词Key与键值Value)而直接进行访问的数据结构。也就是说,它通过把关键码值映射到表中一个位置来访问记录,以加快查找的速度。这个映射函数叫做哈希函数,存放记录的数组叫做哈希表。以哈希表的结构存储原始数据和/或所述原始数据标识,能够在后续的遍历搜索中快速查找到表中的某一数据,提升数据搜索速度。在一具体示例中,服务端采用哈希表结构在第二数据表中存储的原始数据具体可以为hash_ans_a={"loc1":data1,"loc2":data2,"loc3":data3},其中,loc表示哈希表的关键词,data为哈希表的键值,关键词和键值分别表征客户端的图形用户界面上的显示位置及位置对应的数据,"loc1":data1表示在显示位置loc1上的显示数据为data1。
在一些实施例中,还包括:
响应于所述客户端支持超文本传输协议HTTP/2,为所述客户端开启基于超文本传输协议HTTP2的服务端推送功能;
响应于所述客户端不支持超文本传输协议HTTP/2,建立与所述客户端的WebSocket连接,为所述客户端开启服务端的推送功能。
具体的,HTTP/2即超文本传输协议2.0,是下一代HTTP协议。超文本传输协议HTTP/2能够支持服务器推送Server Push功能,若客户端支持超文本传输协议HTTP/2,则可以为客户端开启Server Push功能,以使客户端能够接受服务端主动推送消息。
若客户端不支持超文本传输协议HTTP/2,则为服务端和客户端建立WebSocket连接。创建Websocket连接时,需要通过客户端发出请求,服务端进行回应后,这个过程通常称为“握手”。WebSocket是一种在单个传输控制协议TCP连接上进行全双工通信的协议。WebSocket使得客户端和服务端之间的数据交换变得更加简单,允许服务端主动向客户端推送数据。在WebSocket API中,客户端和服务器只需要完成一次握手,两者之间就直接可以创建持久性的连接,并进行双向数据传输。
可见,无论基于上述哪种协议开启客户端接收主动推送功能,均是为了保证客户端能够及时收到服务端主动推动的差异数据或数据热修复消息,以保证在服务端完成数据热修复后能够及时通知客户端进行相应的数据更新。
图2示出了本申请另一实施例的一种数据热修复方法200,应用于客户端,所述方法200包括以下步骤:
步骤202、接收服务端发送的差异数据;其中,所述差异数据中包含所述客户端对应的差异数据;所述差异数据表征第一数据与第二数据之间的数据变化;所述第一数据为响应于所述服务端的数据热修复完成,更新所述第二数据得到的;所述第二数据中包含在接收到已启用服务端推送功能的所述客户端的首次会话请求时创建的原始数据和/或表征所述原始数据的原始数据标识;和/或
接收所述服务端推送的更新数据标识对应的更新数据与原始数据标识对应的原始数据之间的差异数据;所述更新数据为响应于所述服务端的数据热修复完成,更新所述原始数据得到的,所述更新数据标识为响应于所述服务端的数据热修复完成,更新所述原始数据标识得到的。
具体的,服务端完成数据热修复后得到了差异数据并向客户端推送,客户端接收该差异数据。差异数据记录了在第一数据中相比于第二数据产生变化的数据,将数据热修复后得到的第一数据与第二数据进行比较,可以得到差异数据。所述第一数据为热修复后更新的所述第二数据。第一数据记录了服务端经过数据热修复后的全部数据信息,当服务端完成数据热修复后,得到第一数据。所述第二数据包括了与该服务端进行会话的客户端对应的原始数据,还可以包括用以表征该原始数据的原始数据标识。此外,第二数据还可以包括与客户端对应的原始数据之外的其他数据信息。客户端向服务端发送首次会话请求后,服务端根据该首次会话请求携带的具体请求信息创建与该客户端对应的原始数据和/或原始数据标识。
可选的,所述差异数据也可以为更新数据与原始数据之间的变化数据。每个原始数据对应一个原始数据标识,原始数据更新的同时,其对应的原始数据标识更新为更新数据标识。更新数据与原始数据之间的差异数据为与客户端对应的差异数据。
步骤204、根据所述差异数据进行数据更新展示。
客户端接收到差异数据后,根据差异数据在客户端的显示界面上进行数据展示。例如,在显示界面形成数据表格进行数据展示,同时,在显示界面形成柱形图或饼图等进行图像渲染。
在一具体的示例中,客户端可以为商业智能(BI,Business Intelligence)系统,商业智能系统不仅采用了最新的信息技术,而且提供了预先打包好的应用领域的解决方案。商业智能系统着眼于终端用户对业务数据的访问和业务数据的传送,它可同时服务于信息提供者和信息消费者。商业智能系统支持对所有形式的信息的访问,而不仅仅是那些存储在数据仓库中的信息。
在一些实施例中,在接收服务端发送的差异数据之前,包括:
根据服务端推送的热修复消息向所述服务端发送热修复请求;所述热修复消息为响应于所述服务端的数据热修复完成,根据与所述差异数据对应的客户端生成的。
具体的,客户端开启了服务端推送功能后,可以接收服务端推送的热修复消息。热修复消息表征了服务端已完成数据热修复,且更新产生了与客户端对应的差异数据。为了获取该差异数据,客户端需要向服务端发送热修复请求以获取差异数据。
在一些实施例中,在根据服务端推送的热修复消息向所述服务端发送热修复请求之前,包括:
向所述服务端发送首次会话请求,并接受所述服务端根据所述首次会话请求反馈的所述原始数据,并根据所述原始数据在所述客户端的图形用户界面上进行数据展示。
具体的,客户端若想从服务端获取数据,需要与服务端建立通信连接。当客户端首次与服务端建立通信连接时,需要向服务端发送首次会话请求,服务端根据首次会话请求创建原始数据并发送至客户端,客户端接收到原始数据后在图形用户界面上进行展示。
图3示出了本申请另一实施例的一种数据热修复方法300,所述方法300包括以下步骤:
步骤302、服务端将数据热修复完成后得到的第一数据与第二数据进行比较,以得到差异数据;其中,所述第二数据中包含在接收到已启用服务端推送功能的客户端的首次会话请求时创建的原始数据和/或表征所述原始数据的原始数据标识,所述差异数据中包含所述客户端对应的差异数据;所述第一数据为响应于所述服务端的数据热修复完成,更新所述第二数据得到的;所述差异数据表征所述第一数据与所述第二数据之间的数据变化。
具体的,服务端在进行热修复时,可以根据实际工作需求通过用户操作以触发服务端进行热修复,或可根据系统预置的自动程序触发服务端的热修复,本步骤对于热修复的触发机制不做具体限定。当服务端完成数据热修复后,得到第一数据,该第一数据记录了服务端经过数据热修复后的全部数据信息。所述第一数据为热修复后更新的所述第二数据。所述第二数据包括了与该服务端进行会话的客户端对应的原始数据,还可以包括用以表征该原始数据的原始数据标识。此外,第二数据还可以包括与客户端对应的原始数据之外的其他数据信息。客户端向服务端发送首次会话请求后,服务端根据该首次会话请求携带的具体请求信息创建与该客户端对应的原始数据和/或原始数据标识。将数据热修复后得到的第一数据与第二数据进行比较,可以得到差异数据,差异数据记录了在第一数据中相比于第二数据产生变化的数据。
步骤304、服务端将所述差异数据推送至所述客户端。
确定了差异数据后,服务端向客户端推送该差异数据。需要说明的是,在本实施例中,客户端能够接收服务端推送差异数据的前提是,客户端已开启服务端推送功能,因此保证了客户端能够接收到所述服务端主动推送的数据,以便客户端及时进行数据更新。客户端只需接收所述差异数据,无需接收服务端此次热修复后得到的第一数据或更新数据,有效减少服务端至客户端的热修复数据传输时间,提升热修复效率。
步骤306、客户端接收服务端推送的所述差异数据;和/或
客户端接收所述服务端推送的更新数据标识对应的更新数据与原始数据标识对应的原始数据之间的差异数据;所述更新数据为响应于所述服务端的数据热修复完成,更新所述原始数据得到的,所述更新数据标识为响应于所述服务端的数据热修复完成,更新所述原始数据标识得到的。
具体的,服务端完成数据热修复后得到了差异数据并向客户端推送,客户端接收该差异数据。差异数据记录了在第一数据中相比于第二数据产生变化的数据,将数据热修复后得到的第一数据与第二数据进行比较,可以得到差异数据。所述第一数据为热修复后更新的所述第二数据。第一数据记录了服务端经过数据热修复后的全部数据信息,当服务端完成数据热修复后,得到第一数据。所述第二数据包括了与该服务端进行会话的客户端对应的原始数据,还可以包括用以表征该原始数据的原始数据标识。此外,第二数据还可以包括与客户端对应的原始数据之外的其他数据信息。客户端向服务端发送首次会话请求后,服务端根据该首次会话请求携带的具体请求信息创建与该客户端对应的原始数据和/或原始数据标识。
可选的,所述差异数据也可以表征更新数据与原始数据之间数据变化。每个原始数据对应一个原始数据标识,原始数据更新的同时,其对应的原始数据标识更新为更新数据标识。更新数据与原始数据之间的差异数据为与客户端对应的差异数据。
步骤308、客户端根据所述差异数据进行数据更新展示。
客户端接收到差异数据后,根据差异数据在客户端的显示界面上进行数据展示。例如,在显示界面形成数据表格进行数据展示,同时,在显示界面形成柱形图或饼图等进行图像渲染。
需要说明的是,本申请实施例的方法可以由单个设备执行,例如一台计算机或服务器等。本实施例的方法也可以应用于分布式场景下,由多台设备相互配合来完成。在这种分布式场景的情况下,这多台设备中的一台设备可以只执行本申请实施例的方法中的某一个或多个步骤,这多台设备相互之间会进行交互以完成所述的方法。
需要说明的是,上述对本申请的一些实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于上述实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
本申请实施例还提供了一种服务端400。
参考图4,所述服务端400,包括:
生成模块402,被配置为将在所述服务端的数据热修复完成后得到的第一数据与第二数据进行比较,以得到差异数据;其中,所述第二数据中包含在接收到已启用服务端推送功能的客户端的首次会话请求时创建的原始数据和/或表征所述原始数据的原始数据标识,所述差异数据中包含所述客户端对应的差异数据;所述第一数据为响应于所述服务端的数据热修复完成,更新所述第二数据得到的;所述差异数据表征所述第一数据与所述第二数据之间的数据变化;
推送模块404,被配置为将所述差异数据推送至所述客户端,使得所述客户端基于该差异数据进行数据更新展示;和/或
将更新数据标识对应的更新数据与原始数据标识对应的原始数据之间的差异数据推送至所述客户端;所述更新数据为响应于所述服务端的数据热修复完成,更新所述原始数据得到的,所述更新数据标识为响应于所述服务端的数据热修复完成,更新所述原始数据标识得到的。
本申请的另一实施例还提供了一种客户端500。
参考图5,所述客户端500,包括:
接收模块502,被配置为接收服务端发送的差异数据;其中,所述差异数据中包含所述客户端对应的差异数据;所述差异数据表征第一数据与第二数据之间的数据变化;所述第一数据为响应于所述服务端的数据热修复完成,更新所述第二数据得到的;所述第二数据中包含在接收到已启用服务端推送功能的所述客户端的首次会话请求时创建的原始数据和/或表征所述原始数据的原始数据标识;和/或
接收所述服务端推送的更新数据标识对应的更新数据与原始数据标识对应的原始数据之间的差异数据;所述更新数据为响应于所述服务端的数据热修复完成,更新所述原始数据得到的,所述更新数据标识为响应于所述服务端的数据热修复完成,更新所述原始数据标识得到的;
更新模块504,被配置为根据所述差异数据进行数据更新展示。
为了描述的方便,描述以上装置时以功能分为各种模块分别描述。当然,在实施本申请时可以把各模块的功能在同一个或多个软件和/或硬件中实现。
上述实施例的装置用于实现前述任一实施例中相应的数据热修复方法,并且具有相应的方法实施例的有益效果,在此不再赘述。
与上述任意实施例方法相对应的,本申请还提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上任意一实施例所述的数据热修复方法。
图6示出了本实施例所提供的一种更为具体的电子设备硬件结构示意图,该设备可以包括:处理器1010、存储器1020、输入/输出接口1030、通信接口1040和总线1050。其中处理器1010、存储器1020、输入/输出接口1030和通信接口1040通过总线1050实现彼此之间在设备内部的通信连接。
处理器1010可以采用通用的CPU(Central Processing Unit,中央处理器)、微处理器、应用专用集成电路(Application Specific Integrated Circuit,ASIC)、或者一个或多个集成电路等方式实现,用于执行相关程序,以实现本说明书实施例所提供的技术方案。
存储器1020可以采用ROM(Read Only Memory,只读存储器)、RAM(Random AccessMemory,随机存取存储器)、静态存储设备,动态存储设备等形式实现。存储器1020可以存储操作系统和其他应用程序,在通过软件或者固件来实现本说明书实施例所提供的技术方案时,相关的程序代码保存在存储器1020中,并由处理器1010来调用执行。
输入/输出接口1030用于连接输入/输出模块,以实现信息输入及输出。输入输出/模块可以作为组件配置在设备中(图中未示出),也可以外接于设备以提供相应功能。其中输入设备可以包括键盘、鼠标、触摸屏、麦克风、各类传感器等,输出设备可以包括显示器、扬声器、振动器、指示灯等。
通信接口1040用于连接通信模块(图中未示出),以实现本设备与其他设备的通信交互。其中通信模块可以通过有线方式(例如USB、网线等)实现通信,也可以通过无线方式(例如移动网络、WIFI、蓝牙等)实现通信。
总线1050包括一通路,在设备的各个组件(例如处理器1010、存储器1020、输入/输出接口1030和通信接口1040)之间传输信息。
需要说明的是,尽管上述设备仅示出了处理器1010、存储器1020、输入/输出接口1030、通信接口1040以及总线1050,但是在具体实施过程中,该设备还可以包括实现正常运行所必需的其他组件。此外,本领域的技术人员可以理解的是,上述设备中也可以仅包含实现本说明书实施例方案所必需的组件,而不必包含图中所示的全部组件。
上述实施例的电子设备用于实现前述任一实施例中相应的数据热修复方法,并且具有相应的方法实施例的有益效果,在此不再赘述。
与上述任意实施例方法相对应的,本申请还提供了一种计算机可读存储介质,所述计算机可读存储介质存储计算机指令,所述计算机指令用于使所述计算机执行如上任一实施例所述的数据热修复方法。
本实施例的计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。
上述实施例的存储介质存储的计算机指令用于使所述计算机执行如上任一实施例所述的数据热修复方法,并且具有相应的方法实施例的有益效果,在此不再赘述。
所属领域的普通技术人员应当理解:以上任何实施例的讨论仅为示例性的,并非旨在暗示本申请的范围(包括权利要求)被限于这些例子;在本申请的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,步骤可以以任意顺序实现,并存在如上所述的本申请实施例的不同方面的许多其它变化,为了简明它们没有在细节中提供。
另外,为简化说明和讨论,并且为了不会使本申请实施例难以理解,在所提供的附图中可以示出或可以不示出与集成电路(IC)芯片和其它部件的公知的电源/接地连接。此外,可以以框图的形式示出装置,以便避免使本申请实施例难以理解,并且这也考虑了以下事实,即关于这些框图装置的实施方式的细节是高度取决于将要实施本申请实施例的平台的(即,这些细节应当完全处于本领域技术人员的理解范围内)。在阐述了具体细节(例如,电路)以描述本申请的示例性实施例的情况下,对本领域技术人员来说显而易见的是,可以在没有这些具体细节的情况下或者这些具体细节有变化的情况下实施本申请实施例。因此,这些描述应被认为是说明性的而不是限制性的。
尽管已经结合了本申请的具体实施例对本申请进行了描述,但是根据前面的描述,这些实施例的很多替换、修改和变型对本领域普通技术人员来说将是显而易见的。例如,其它存储器架构(例如,动态RAM(DRAM))可以使用所讨论的实施例。
本申请实施例旨在涵盖落入所附权利要求的宽泛范围之内的所有这样的替换、修改和变型。因此,凡在本申请实施例的精神和原则之内,所做的任何省略、修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (20)
1.一种数据热修复方法,其特征在于,应用于服务端,所述方法包括:
将在所述服务端的数据热修复完成后得到的第一数据与第二数据进行比较,以得到差异数据;其中,所述第二数据中包含在接收到已启用服务端推送功能的客户端的首次会话请求时创建的原始数据和/或表征所述原始数据的原始数据标识,所述差异数据中包含所述客户端对应的差异数据;所述第一数据为响应于所述服务端的数据热修复完成,更新所述第二数据得到的;所述差异数据表征所述第一数据与所述第二数据之间的数据变化;
将所述差异数据推送至所述客户端,使得所述客户端基于该差异数据进行数据更新展示;和/或
将更新数据标识对应的更新数据与原始数据标识对应的原始数据之间的差异数据推送至所述客户端;所述更新数据为响应于所述服务端的数据热修复完成,更新所述原始数据得到的,所述更新数据标识为响应于所述服务端的数据热修复完成,更新所述原始数据标识得到的。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
响应于对所述服务端的数据热修复完成,对所述第二数据进行更新以得到所述第一数据。
3.根据权利要求1所述的方法,其特征在于,将所述差异数据推送至所述客户端,还包括:
向所述客户端推送热修复消息;
在接收到所述客户端响应于所述热修复消息的热修复请求后,将所述差异数据推送至所述客户端。
4.根据权利要求1所述的方法,其特征在于,所述第二数据包括热修复前的第二数据表,所述第一数据包括热修复后的第一数据表,所述差异数据包括热修复后的第一数据表与热修复前的第二数据表之间的差异数据表。
5.根据权利要求4所述的方法,其特征在于,所述方法还包括:
响应于接收到所述客户端发送的所述首次会话请求,根据所述首次会话请求创建所述原始数据和/或表征所述原始数据的原始数据标识,并将其发送至所述客户端,将所述原始数据和/或所述原始数据标识存储在所述第二数据表中。
6.根据权利要求5所述的方法,其特征在于,在响应于接收到所述客户端发送的所述首次会话请求之后,包括:
为所述客户端创建会话控制连接,并生成与所述客户端对应的所述会话标识符,将客户端对应的会话标识符存储在所述第二数据表中。
7.根据权利要求6所述的方法,其特征在于,客户端为多个,所述将所述差异数据推送至所述客户端,包括:
将不同客户端对应的差异数据分别推送至所述会话标识符指示的客户端。
8.根据权利要求7所述的方法,其特征在于,所述将不同客户端对应的差异数据分别推送至所述会话标识符指示的客户端之前,包括:
向所述会话标识符指示的所述客户端推送热修复消息;
在接收到所述客户端响应于所述热修复消息的热修复请求后,从所述差异数据表中检索出与所述热修复请求中携带的客户端标识符匹配的所述会话标识符及与该会话标识符对应的所述差异数据。
9.根据权利要求6所述的方法,其特征在于,在根据所述首次会话请求创建所述原始数据和/或表征所述原始数据的原始数据标识,并将其发送至所述客户端之后,包括:
响应于在预定时间内未接收到所述客户端发送的心跳消息,将所述客户端对应的所述会话标识符从所述第二数据表中删除,以更新所述第二数据表中会话标识符对应的客户端。
10.根据权利要求5-9任一项所述的方法,其特征在于,所述将所述原始数据和/或所述原始数据标识存储在所述第二数据表中,包括:
通过哈希表结构将所述原始数据和/或所述原始数据标识存储在所述第二数据表中。
11.根据权利要求1-9任意一项所述的方法,其特征在于,还包括:
响应于所述客户端支持超文本传输协议HTTP/2,为所述客户端开启基于超文本传输协议HTTP2的服务端推送功能;
响应于所述客户端不支持超文本传输协议HTTP/2,建立与所述客户端的WebSocket连接,为所述客户端开启服务端的推送功能。
12.一种数据热修复方法,其特征在于,应用于客户端,所述方法包括:
接收服务端发送的差异数据;其中,所述差异数据中包含所述客户端对应的差异数据;所述差异数据表征第一数据与第二数据之间的数据变化;所述第一数据为响应于所述服务端的数据热修复完成,更新所述第二数据得到的;所述第二数据中包含在接收到已启用服务端推送功能的所述客户端的首次会话请求时创建的原始数据和/或表征所述原始数据的原始数据标识;和/或
接收所述服务端推送的更新数据标识对应的更新数据与原始数据标识对应的原始数据之间的差异数据;所述更新数据为响应于所述服务端的数据热修复完成,更新所述原始数据得到的,所述更新数据标识为响应于所述服务端的数据热修复完成,更新所述原始数据标识得到的;
根据所述差异数据进行数据更新展示。
13.根据权利要求12所述的方法,其特征在于,在接收服务端发送的差异数据之前,包括:
根据服务端推送的热修复消息向所述服务端发送热修复请求;所述热修复消息为响应于所述服务端的数据热修复完成,根据与所述差异数据对应的客户端生成的。
14.根据权利要求13所述的方法,其特征在于,在根据服务端推送的热修复消息向所述服务端发送热修复请求之前,包括:
向所述服务端发送首次会话请求,并接受所述服务端根据所述首次会话请求反馈的所述原始数据,并根据所述原始数据在所述客户端的图形用户界面上进行数据展示。
15.一种数据热修复方法,其特征在于,包括:
服务端将数据热修复完成后得到的第一数据与第二数据进行比较,以得到差异数据;其中,所述第二数据中包含在接收到已启用服务端推送功能的客户端的首次会话请求时创建的原始数据和/或表征所述原始数据的原始数据标识,所述差异数据中包含所述客户端对应的差异数据;所述第一数据为响应于所述服务端的数据热修复完成,更新所述第二数据得到的;所述差异数据表征所述第一数据与所述第二数据之间的数据变化;
服务端将所述差异数据推送至所述客户端;
客户端接收服务端推送的所述差异数据;和/或
客户端接收所述服务端推送的更新数据标识对应的更新数据与原始数据标识对应的原始数据之间的差异数据;所述更新数据为响应于所述服务端的数据热修复完成,更新所述原始数据得到的,所述更新数据标识为响应于所述服务端的数据热修复完成,更新所述原始数据标识得到的;
客户端根据所述差异数据进行数据更新展示。
16.一种服务端,其特征在于,包括:
生成模块,被配置为将在所述服务端的数据热修复完成后得到的第一数据与第二数据进行比较,以得到差异数据;其中,所述第二数据中包含在接收到已启用服务端推送功能的客户端的首次会话请求时创建的原始数据和/或表征所述原始数据的原始数据标识,所述差异数据中包含所述客户端对应的差异数据;所述第一数据为响应于所述服务端的数据热修复完成,更新所述第二数据得到的;所述差异数据表征所述第一数据与所述第二数据之间的数据变化;
推送模块,被配置为将所述差异数据推送至所述客户端,使得所述客户端基于该差异数据进行数据更新展示;和/或
将更新数据标识对应的更新数据与原始数据标识对应的原始数据之间的差异数据推送至所述客户端;所述更新数据为响应于所述服务端的数据热修复完成,更新所述原始数据得到的,所述更新数据标识为响应于所述服务端的数据热修复完成,更新所述原始数据标识得到的。
17.一种客户端,其特征在于,包括:
接收模块,被配置为接收服务端发送的差异数据;其中,所述差异数据中包含所述客户端对应的差异数据;所述差异数据表征第一数据与第二数据之间的数据变化;所述第一数据为响应于所述服务端的数据热修复完成,更新所述第二数据得到的;所述第二数据中包含在接收到已启用服务端推送功能的所述客户端的首次会话请求时创建的原始数据和/或表征所述原始数据的原始数据标识;和/或
接收所述服务端推送的更新数据标识对应的更新数据与原始数据标识对应的原始数据之间的差异数据;所述更新数据为响应于所述服务端的数据热修复完成,更新所述原始数据得到的,所述更新数据标识为响应于所述服务端的数据热修复完成,更新所述原始数据标识得到的;
更新模块,被配置为根据所述差异数据进行数据更新展示。
18.一种数据热修复系统,其特征在于,包括:
如权利要求16所述的服务端,以及如权利要求17所述的客户端。
19.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至15中任意一项所述的方法。
20.一种计算机可读存储介质,所述计算机可读存储介质存储计算机指令,其特征在于,所述计算机指令用于使计算机执行根据权利要求1至15中任意一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210594785.4A CN114900424A (zh) | 2022-05-27 | 2022-05-27 | 数据热修复方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210594785.4A CN114900424A (zh) | 2022-05-27 | 2022-05-27 | 数据热修复方法、装置、电子设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114900424A true CN114900424A (zh) | 2022-08-12 |
Family
ID=82725891
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210594785.4A Pending CN114900424A (zh) | 2022-05-27 | 2022-05-27 | 数据热修复方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114900424A (zh) |
Citations (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1906574A (zh) * | 2003-11-19 | 2007-01-31 | 艾利森电话股份有限公司 | 更新移动终端中的数据 |
CN102937906A (zh) * | 2012-10-31 | 2013-02-20 | 中兴通讯股份有限公司 | 一种补丁软件升级方法及系统 |
US20130124595A1 (en) * | 2011-11-15 | 2013-05-16 | Google Inc. | Cloud-to-device messaging for application activation and reporting |
US20140289661A1 (en) * | 2009-08-26 | 2014-09-25 | Adobe Systems Incorporated | Methods and Systems for Combined Management of Multiple Servers |
CN105100158A (zh) * | 2014-05-15 | 2015-11-25 | 中兴通讯股份有限公司 | 消息推送、获取方法及装置 |
US20160191662A1 (en) * | 2012-07-26 | 2016-06-30 | Microsoft Technology Licensing, Llc | Automatic data request recovery after session failure |
WO2016122904A2 (en) * | 2015-01-30 | 2016-08-04 | Microsoft Technology Licensing, Llc | Managing thermal remediations on a computing device |
WO2016155332A1 (zh) * | 2015-03-31 | 2016-10-06 | 华为技术有限公司 | 一种服务器和数据处理方法 |
CN106897095A (zh) * | 2017-02-24 | 2017-06-27 | 网易(杭州)网络有限公司 | 应用程序热修复的方法、装置和可读存储介质 |
CN107608707A (zh) * | 2017-07-31 | 2018-01-19 | 努比亚技术有限公司 | 具有热修复功能之应用检测方法、终端及可读存储介质 |
CN108111331A (zh) * | 2017-11-06 | 2018-06-01 | 北京趣拿软件科技有限公司 | 更新数据包的获取方法、装置、存储介质、处理器及系统 |
CN109257228A (zh) * | 2018-10-25 | 2019-01-22 | 网宿科技股份有限公司 | 一种数据更新方法和边缘服务器 |
CN109271187A (zh) * | 2018-09-17 | 2019-01-25 | 五八有限公司 | 一种应用程序的热修复方法、装置、存储介质及终端 |
CN109918113A (zh) * | 2019-01-17 | 2019-06-21 | 平安城市建设科技(深圳)有限公司 | Ios应用热修复/热更新方法、服务器及存储介质 |
CN112905220A (zh) * | 2021-03-16 | 2021-06-04 | 北京字节跳动网络技术有限公司 | 热修复方法、装置、设备及存储介质 |
US20210281641A1 (en) * | 2020-03-03 | 2021-09-09 | Snap Inc. | Minimizing number of synchs |
CN113645309A (zh) * | 2021-08-18 | 2021-11-12 | 浙江苍南仪表集团股份有限公司 | 多客户端数据差异化二次缓存及同步的处理方法及系统 |
CN114115959A (zh) * | 2021-11-05 | 2022-03-01 | 深圳依时货拉拉科技有限公司 | App热修复方法及其装置、可读存储介质和计算机设备 |
-
2022
- 2022-05-27 CN CN202210594785.4A patent/CN114900424A/zh active Pending
Patent Citations (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1906574A (zh) * | 2003-11-19 | 2007-01-31 | 艾利森电话股份有限公司 | 更新移动终端中的数据 |
US20140289661A1 (en) * | 2009-08-26 | 2014-09-25 | Adobe Systems Incorporated | Methods and Systems for Combined Management of Multiple Servers |
US20130124595A1 (en) * | 2011-11-15 | 2013-05-16 | Google Inc. | Cloud-to-device messaging for application activation and reporting |
US20160191662A1 (en) * | 2012-07-26 | 2016-06-30 | Microsoft Technology Licensing, Llc | Automatic data request recovery after session failure |
CN102937906A (zh) * | 2012-10-31 | 2013-02-20 | 中兴通讯股份有限公司 | 一种补丁软件升级方法及系统 |
CN105100158A (zh) * | 2014-05-15 | 2015-11-25 | 中兴通讯股份有限公司 | 消息推送、获取方法及装置 |
WO2016122904A2 (en) * | 2015-01-30 | 2016-08-04 | Microsoft Technology Licensing, Llc | Managing thermal remediations on a computing device |
WO2016155332A1 (zh) * | 2015-03-31 | 2016-10-06 | 华为技术有限公司 | 一种服务器和数据处理方法 |
CN106897095A (zh) * | 2017-02-24 | 2017-06-27 | 网易(杭州)网络有限公司 | 应用程序热修复的方法、装置和可读存储介质 |
CN107608707A (zh) * | 2017-07-31 | 2018-01-19 | 努比亚技术有限公司 | 具有热修复功能之应用检测方法、终端及可读存储介质 |
CN108111331A (zh) * | 2017-11-06 | 2018-06-01 | 北京趣拿软件科技有限公司 | 更新数据包的获取方法、装置、存储介质、处理器及系统 |
CN109271187A (zh) * | 2018-09-17 | 2019-01-25 | 五八有限公司 | 一种应用程序的热修复方法、装置、存储介质及终端 |
CN109257228A (zh) * | 2018-10-25 | 2019-01-22 | 网宿科技股份有限公司 | 一种数据更新方法和边缘服务器 |
CN109918113A (zh) * | 2019-01-17 | 2019-06-21 | 平安城市建设科技(深圳)有限公司 | Ios应用热修复/热更新方法、服务器及存储介质 |
US20210281641A1 (en) * | 2020-03-03 | 2021-09-09 | Snap Inc. | Minimizing number of synchs |
CN112905220A (zh) * | 2021-03-16 | 2021-06-04 | 北京字节跳动网络技术有限公司 | 热修复方法、装置、设备及存储介质 |
CN113645309A (zh) * | 2021-08-18 | 2021-11-12 | 浙江苍南仪表集团股份有限公司 | 多客户端数据差异化二次缓存及同步的处理方法及系统 |
CN114115959A (zh) * | 2021-11-05 | 2022-03-01 | 深圳依时货拉拉科技有限公司 | App热修复方法及其装置、可读存储介质和计算机设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10523784B2 (en) | Capturing and replaying application sessions using resource files | |
WO2020199751A1 (zh) | 用于加载页面图片的方法、装置和电子设备 | |
CN109976667B (zh) | 一种镜像管理方法、装置及系统 | |
US9918228B2 (en) | Session completion through co-browsing | |
US10409694B2 (en) | Data conversion method and backup server | |
US20130138723A1 (en) | Dynamic browser icons | |
US20140173415A1 (en) | Interactivity Analyses of Web Resources Based on Reload Events | |
CN106572139B (zh) | 多终端控制方法、终端、服务器和系统 | |
CN112559927B (zh) | 一种网页加载方法及装置 | |
US10402464B2 (en) | Methods and apparatuses for opening a webpage, invoking a client, and creating a light application | |
US11615443B2 (en) | System and method to selectively update supplemental content rendered in placement regions of a rendered page | |
CN111694757B (zh) | 应用程序的测试方法、装置、电子设备及计算机可读存储介质 | |
US20150193832A1 (en) | Method, apparatus, and system for communicating and presenting product information | |
US20150365497A1 (en) | Providing access to information across multiple computing devices | |
CN109871354B (zh) | 一种文件处理的方法及装置 | |
CN104881454A (zh) | 参数的更新方法及系统 | |
CN103581878B (zh) | 一种用于在移动设备中获取目标资源的方法和设备 | |
TW201734856A (zh) | 頁面顯示的方法及裝置 | |
US8990698B2 (en) | Social network service synchronization | |
WO2015058614A1 (zh) | 一种书签存储方法及装置、确定待浏览书签的方法及装置 | |
CN113326418A (zh) | 用于确定网页信息源及网页质量的方法和装置 | |
KR20180010442A (ko) | 온라인 저작 서비스가 수행되는 사용자 단말 및 이의 문서 저장 방법 | |
CN114900424A (zh) | 数据热修复方法、装置、电子设备及存储介质 | |
CN109428919B (zh) | 网页处理请求的处理方法和装置以及电子设备 | |
CN104794165A (zh) | 一种页面展现方法、装置及系统 |
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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20220812 |