CN113014615B - 数据同步方法、装置和系统 - Google Patents
数据同步方法、装置和系统 Download PDFInfo
- Publication number
- CN113014615B CN113014615B CN201911330335.9A CN201911330335A CN113014615B CN 113014615 B CN113014615 B CN 113014615B CN 201911330335 A CN201911330335 A CN 201911330335A CN 113014615 B CN113014615 B CN 113014615B
- Authority
- CN
- China
- Prior art keywords
- message
- user
- push message
- token
- service
- 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
- 238000000034 method Methods 0.000 title claims abstract description 47
- 230000004044 response Effects 0.000 claims description 28
- 230000000903 blocking effect Effects 0.000 abstract description 9
- 230000001360 synchronised effect Effects 0.000 abstract description 7
- 230000006854 communication Effects 0.000 description 8
- 238000004891 communication Methods 0.000 description 8
- 230000003993 interaction Effects 0.000 description 7
- 230000008569 process Effects 0.000 description 7
- 230000001960 triggered effect Effects 0.000 description 7
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000007175 bidirectional communication Effects 0.000 description 1
- 201000010099 disease Diseases 0.000 description 1
- 208000037265 diseases, disorders, signs and symptoms Diseases 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000008014 freezing Effects 0.000 description 1
- 238000007710 freezing Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Classifications
-
- 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/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1095—Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0807—Network architectures or network communication protocols for network security for authentication of entities using tickets, e.g. Kerberos
-
- 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/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
-
- 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/14—Session management
- H04L67/141—Setup of application sessions
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明涉及数据同步方法、数据同步装置和数据同步系统;所述数据同步方法例如包括:登录服务端以获取令牌并与所述服务端建立目标协议连接;通过所述目标协议连接接收所述服务端广播的推送消息;判断所述推送消息中包含的令牌与获取的所述令牌是否一致;当判断所述令牌一致且所述推送消息为当前操作Web页面的业务消息时对所述当前操作Web页面进行更新操作。本发明可以解决多用户在网页端进行数据交互时,用户自身执行任务生成的数据与接收到的同步数据发生冲突导致出现卡顿的问题。
Description
技术领域
本发明涉及人机交互技术领域,尤其涉及到数据同步方法、数据同步装置和数据同步系统。
背景技术
多个用户在用户端例如网页页面与服务器进行数据交互时,可以通过通信协议实现用户执行业务的网页页面与服务器双向通信,其中一个用户执行业务带来的交互信息可以通过该通信协议同步到所有登录的用户执行业务的网页页面,因此在频繁的数据交互过程中,由于用户自身执行业务产生的数据与接收到的同步数据存在延时,因此导致数据同步过程中出现画面卡顿现象。
发明内容
因此,本发明实施例提出数据同步方法、数据同步装置和数据同步系统以及计算机可读存储介质,其可以解决多个用户在用户端与服务端进行数据交互时,用户自身执行任务生成的数据与接收到的同步数据发生冲突导致出现画面卡顿现象。
具体地,本发明实施例提出了一种数据同步方法,所述数据同步方法包括:登录服务端以获取令牌并与所述服务端建立目标协议连接;通过所述目标协议连接接收所述服务端广播的推送消息;判断所述推送消息中包含的令牌与获取的所述令牌是否一致;在判断所述推送消息中包含的令牌与获取的所述令牌一致的情况下,放弃响应所述推送消息。
在现有技术中,多个用户在网页页面与服务器进行数据交互时,可以通过通信协议实现用户执行任务网页页面与服务器双向通信,其中一个用户执行任务带来的交互信息可以通过该通信协议同步到所有登录的用户执行任务的网页页面,因此在频繁的数据交互过程中,由于用户自身执行任务产生的数据与接收到的同步数据存在延时,因此导致数据同步过程中出现卡顿现象。本发明实施例通过登录服务端获取相应的令牌并与服务端建立协议连接,通过该协议连接接收服务端广播的推送消息并判断推送消息中包含的令牌与获取的令牌是否一致,当判断令牌一致时放弃响应推送消息,因此登录的用户能够根据令牌判断服务端的推送消息是否为自身触发的,如果是则不进行后续数据同步操作,能够屏蔽自身执行业务对应生成的业务数据,避免了由于用户端自身执行业务生成的业务数据与接收的同步数据之间存在延时带来的画面卡顿现象。
在本发明的一个实施例中,所述数据同步方法还包括:在判断所述推送消息中包含的令牌与获取的所述令牌不一致的情况下,基于所述推送消息中包含的业务数据判断所述推送消息是否为当前操作Web页面的业务消息;以及响应于判断所述推送消息是所述当前操作Web页面的业务消息,根据所述业务数据对所述当前操作Web页面进行更新操作;或者响应于判断所述推送消息不是所述当前操作Web页面的业务消息,放弃响应所述推送消息。
在本发明的一个实施例中,所述数据同步方法还包括:通过所述目标协议连接向所述服务端发送操作消息,其中所述操作消息包含获取的所述令牌和当前操作Web页面产生的业务数据,以供所述服务端生成所述推送消息。
在本发明的一个实施例中,所述目标协议连接为WebSocket连接,且所述服务端为视频拼接器。
另外,本发明实施例提出一种数据同步装置,包括:连接建立模块,用于登录服务端以获取令牌并与所述服务端建立目标协议连接;消息接收模块,用于通过所述目标协议连接接收所述服务端广播的推送消息;令牌判断模块,用于判断所述推送消息中包含的令牌与获取的所述令牌是否一致;消息判断模块,用于在判断所述推送消息中包含的令牌与获取的所述令牌一致的情况下,放弃响应所述推送消息。
在本发明的一个实施例中,所述消息判断模块还用于:在判断所述推送消息中包含的令牌与获取的所述令牌不一致的情况下,基于所述推送消息中包含的业务数据判断所述推送消息是否为当前操作Web页面的业务消息;以及响应于判断所述推送消息是所述当前操作Web页面的业务消息,根据所述业务数据对所述当前操作Web页面进行更新操作;或者响应于判断所述推送消息不是所述当前操作Web页面的业务消息,放弃响应所述推送消息。
在本发明的一个实施例中,所述数据同步装置还包括:消息发送模块,用于通过所述目标协议连接向所述服务端发送操作消息,其中所述操作消息包含获取的所述令牌和当前操作Web页面产生的业务数据,以供所述服务端生成所述推送消息。
再者本发明实施例提出一种数据同步系统,包括:服务端;以及多个用户端,用于分别登录所述服务端以获取不同的令牌并与所述服务端建立目标协议连接;其中,第一用户端用于:通过所述目标协议连接向所述服务端发送操作消息,其中所述操作消息包含所述第一用户端的所述令牌和所述第一用户端当前操作Web页面产生的业务数据,其中所述第一用户端为所述多个用户端中的任一用户端;其中,所述服务端用于:解析所述操作消息以得到所述第一用户端的所述令牌和所述业务数据;响应于所述第一用户端的所述令牌为合法令牌,对所述业务数据进行响应并基于所述业务数据生成包含所述第一用户端的所述令牌的推送消息;以及广播所述推送消息至所述多个用户端;其中,第二用户端用于:通过所述目标协议连接接收所述服务端广播的所述推送消息;判断所述推送消息中包含的令牌与所述第二用户端的所述令牌是否一致;在判断所述推送消息中包含的令牌与所述第二用户端的所述令牌不一致的情况下,基于所述推送消息中包含的业务数据判断所述推送消息是否为所述第二用户端当前操作Web页面的业务消息;以及响应于判断所述推送消息是所述第二用户端当前操作Web页面的业务消息,根据所述业务数据对所述第二用户端当前操作Web页面进行更新操作;或者响应于判断所述推送消息不是所述第二用户端当前操作Web页面的业务消息,放弃响应所述推送消息,其中所述第二用户端为所述多个用户端中除所述第一用户端之外的任一用户端。
在本发明的一个实施例中,所述第一用户端还用于:判断所述推送消息中包含的令牌与所述第一用户端的所述令牌是否一致;在判断所述推送消息中包含的令牌与所述第一用户端的所述令牌一致的情况下,放弃响应所述推送消息。
再者,本发明实施例提出一种数据同步系统,包括:处理器和存储器;其中所述存储器存储有所述处理器执行的指令,且所述指令使得所述处理器执行操作以进行如上述实施例中任意一项所述的数据同步方法。
再者,本发明实施例提出一种计算机可读存储介质,所述计算机可读存储介质为非易失性存储器且存储有程序代码,所述程序代码被一个或多个处理器执行以实现如上述实施例中任意一项所述的数据同步方法。
由上可知,本发明上述技术方案,可以具有如下一个或多个有益效果:a)通过登录服务端获取相应的令牌并与服务端建立协议连接,通过该协议连接接收服务端广播的推送消息并判断推送消息中包含的令牌与获取的令牌是否一致,当判断令牌不一致时做出响应进行后续数据同步操作,当前判断令牌一致时放弃响应推送消息,因此登录的用户能够根据令牌判断服务端的推送消息是否为自身触发的,如果不是则进行后续数据同步操作,能够屏蔽自身执行任务对应生成的数据,避免了由于用户端自身执行业务生成的业务数据与接收的同步数据之间存在延时带来的画面卡顿现象;b)当判断推送消息中包含的令牌与获取的令牌不一致时进行响应,根据推送消息中的业务数据判断该推送消息是否为当前操作Web页面的业务消息,且判断为是则根据业务数据对当前操作Web页面进行更新操作,判断为否则放弃响应推送消息,因此能够将与用户当前业务无关的数据屏蔽,减少多余的网页端内存使用,避免内存使用过多造成网页界面卡顿。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本发明的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1为本发明第一实施例的数据同步方法的流程图;
图2为本发明第二实施例的数据同步装置的结构示意图;
图3a为本发明第三实施例的数据同步系统中的第一用户端执行数据同步方法的流程图;
图3b为本发明第三实施例的数据同步系统中的第二用户端执行数据同步方法的流程图;
图4为本发明第四实施例的数据同步系统的结构示意图;
图5为本发明第五实施例的计算机可读存储介质的结构示意图。
附图标记说明
S11-S17:数据同步方法的步骤;
20:数据同步装置;201:连接建立模块;203:消息接收模块;205:令牌判断模块;207:消息处理模块;209:消息发送模块;
40:数据同步系统;41:处理器;42:存储器;
50:计算机可读存储介质。
具体实施方式
需要说明的是,在不冲突的情况下,本发明中的实施例及实施例中的特征可以互相组合。下面将参考附图并结合实施例来说明本发明。
为了使本领域普通技术人员更好地理解本发明的技术方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明的一部分实施例,而不是全部的实施例,都应当属于本发明的保护范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等适用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应当理解这样使用的术语在适当情况下可以互换,以便这里描述的本发明实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外。术语“包括”和“具有”以及它们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备国有的其它步骤或单元。
还需要说明的是,本发明中多个实施例的划分仅是为了描述的方便,不应构成特别的限定,各种实施例中的特征在不矛盾的情况下可以相结合,相互引用。
【第一实施例】
如图1所示,本发明第一实施例提出一种数据同步方法,例如包括步骤S11至S17。
步骤S11:登录服务端以获取令牌并与所述服务端建立目标协议连接;
步骤S13:通过所述目标协议连接接收所述服务端广播的推送消息;
步骤S15:判断所述推送消息中包含的令牌与获取的所述令牌是否一致;
步骤S17:在判断所述推送消息中包含的令牌与获取的所述令牌一致的情况下,放弃响应所述推送消息。
在步骤S11中,用户登录服务端,服务端会对登录的每个用户添加对应的令牌(Token),并在服务端内部进行备份。服务端与登陆的每个用户建立目标协议连接,提到的目标协议连接例如为WebSocket连接,该协议可以实现用户端与服务端全双工(full-duplex)通信,允许服务端主动发送信息给用户端。进一步地,提到的服务端例如为视频拼接器,提到的用户端例如为浏览器等用户操作界面。
在步骤S13中,登录服务端的用户例如通过WebSocket连接接收服务端广播的推送消息。进一步地,登录服务端的用户在接收服务端广播的推送消息之前,例如还通过该目标协议连接向服务端发送操作消息,其中所述操作消息包含用户端获取的令牌和当前操作Web页面产生的业务数据,服务器根据该操作消息生成推送消息。提到的推送消息例如包括:用户在Web页面执行业务生成的业务数据以及所述执行任务的用户对应的令牌。进一步地,提到的用户在Web页面执行的业务例如包括:创建屏体、创建图层、创建背景、黑屏、冻结、调整图像的大小和位置以及保存场景等。用户执行业务会对应生成相应的业务数据,例如当第一用户执行的业务完成时,所述服务端将生成的业务数据以及该第一用户对应的令牌打包得到所述推送消息,并将该推送消息推送至所有登录的用户。
在步骤S15中,用户端接收服务端广播的推送消息之前,会判断所述推送消息中包含的令牌与自身获取的令牌是否一致。
在步骤S17中,当判断所述推送消息中包含的令牌与自身获取的令牌一致,即所述推送消息是当前用户端自身触发的,则放弃响应所述推送消息。因此用户端能够屏蔽自身执行业务对应生成的业务数据,避免了由于用户端自身执行业务生成的业务数据与接收的同步数据之间存在延时带来的画面卡顿现象。
进一步地,当判断所述推送消息中包含的令牌与自身获取的令牌不一致,即所述推送消息不是当前用户端自身触发的,则进行后续的数据同步操作。所述后续的数据同步操作例如为判断所述推送消息是否为当前操作web页面的业务消息。举例而言,当前操作web页面的业务例如为“创建图层”,如果所述推送消息中的业务数据为执行“创建图层”业务对应生成的数据,则所述推送消息是当前Web页面的业务消息,如果所述推送消息中的业务数据为“创建屏体”等除了“创建图层”以外的业务对应生成的数据,则所述推送消息不是当前Web页面的业务消息。
当判断所述推送消息是所述当前操作Web页面的业务消息时,用户端根据所述推送消息中的业务数据对所述当前操作Web页面进行数据更新。进一步地,当判断所述推送消息不是所述当前操作Web页面的业务消息时,用户端放弃响应所述推送消息。
因此,登录的用户能够根据令牌判断服务端的推送消息是否为自身触发的,如果不是则进行后续数据同步操作,能够屏蔽自身执行业务对应生成的业务数据,避免了由于用户端自身执行业务生成的业务数据与接收的同步数据之间存在延时带来的画面卡顿现象。
举例而言,登录服务端的第一用户在其对应的第一操作Web页面上创建一个图层,除了该第一用户的其它登录服务端的用户在对应的其它操作Web界面也能看到该第一用户创建的图层。
同时,如果判断推送消息是当前操作Web页面的业务消息则对该页面进行数据更新,否则放弃推送消息,如此一来,用户端能够屏蔽掉与自身执行的业务无关的数据,有效减少当前操作Web页面的内存使用,能够避免内存使用过多造成网页界面卡顿。
综上所述,本实施例提出的一种数据同步方法,通过登录服务端获取相应的令牌并与服务端建立协议连接,通过该协议连接接收服务端广播的推送消息并判断推送消息中包含的令牌与获取的令牌是否一致,当判断令牌不一致时做出响应进行后续数据同步操作,因此登录的用户能够根据令牌判断服务端的推送消息是否为自身触发的,如果不是则进行后续数据同步操作,用户端能够接收服务端的推送消息完成数据同步,同时屏蔽自身执行业务对应生成的业务数据,避免了由于用户端自身业务数据与接收的同步数据之间存在延时带来的画面卡顿现象;当判断推送消息中包含的令牌与获取的令牌不一致时进行响应,根据推送消息中的业务数据判断该推送消息是否为当前操作Web页面的业务消息,且判断为是则根据业务数据对当前操作Web页面进行更新操作,判断为否则放弃响应推送消息,因此能够将与用户当前业务无关的数据屏蔽,减少多余的网页端内存使用,避免内存使用过多造成网页界面卡顿。
【第二实施例】
如图2所示,本发明第二实施例提供了一种数据同步装置。数据同步装置20包括:连接建立模块201、消息接收模块203、令牌判断模块205、以及消息处理模块207。
其中,连接建立模块201用于登录服务端以获取令牌并与所述服务端建立目标协议连接。消息接收模块203用于通过所述目标协议连接接收所述服务端广播的推送消息。令牌判断模块205用于判断所述推送消息中包含的令牌与获取的所述令牌是否一致。消息处理模块207用于响应于判断所述推送消息中包含的令牌与获取的所述令牌一致,放弃响应所述推送消息。
至于连接建立模块201、消息接收模块203、令牌判断模块205、以及消息处理模块207的具体功能细节可参考前述第一实施例中步骤S11、S13、S15、和S17的相关描述,在此不再赘述。此外,值得一提的是,连接建立模块201、消息接收模块203、令牌判断模块205、以及消息处理模块207可以为软件模块,存储于非易失性存储器中且由处理器执行相关操作以进行前述第一实施例中的步骤S11、S13、S15、和S17。
进一步地,消息处理模块207还用于响应于判断所述推送消息中包含的令牌与获取的所述令牌不一致,基于所述推送消息中包含的业务数据判断所述推送消息是否为当前操作Web页面的业务消息;以及响应于判断所述推送消息是所述当前操作Web页面的业务消息,根据所述业务数据对所述当前操作Web页面进行更新操作。进一步地,消息处理模块207还用于响应于判断所述推送消息不是所述当前操作Web页面的业务消息,放弃响应所述推送消息。
进一步地,据同步装置20还包括:消息发送模块209,用于通过所述目标协议连接向所述服务端发送操作消息,其中所述操作消息包含获取的所述令牌和当前操作Web页面产生的业务数据,以供所述服务端生成所述推送消息。
综上所述,本发明第二实施例提供的一种数据同步装置,通过登录服务端获取相应的令牌并与服务端建立协议连接,通过该协议连接接收服务端广播的推送消息并判断推送消息中包含的令牌与获取的令牌是否一致,当判断令牌不一致时做出响应进行后续数据同步操作,因此登录的用户能够根据令牌判断服务端的推送消息是否为自身触发的,如果不是则进行后续数据同步操作,用户端能够接收服务端的推送消息完成数据同步,同时屏蔽自身执行业务对应生成的业务数据,避免了由于用户端自身业务数据与接收的同步数据之间存在延时带来的画面卡顿现象;当判断推送消息中包含的令牌与获取的令牌不一致时进行响应,根据推送消息中的业务数据判断该推送消息是否为当前操作Web页面的业务消息,且判断为是则根据业务数据对当前操作Web页面进行更新操作,判断为否则放弃响应推送消息,因此能够将与用户当前业务无关的数据屏蔽,减少多余的网页端内存使用,避免内存使用过多造成网页界面卡顿。
【第三实施例】
本发明第三实施例提供了一种数据同步系统。所述数据同步系统例如包括服务端以及多个用户端,所述多个用户端用于登录所述服务端以获取不同的令牌并与所述服务端建立目标协议连接。
其中,所述多个用户端包括第一用户端和第二用户端。图3a为所述数据同步系统中所述第一用户端执行数据同步方法的流程图,如图3a所示,第一用户端用于:通过所述目标协议连接向所述服务端发送操作消息,其中所述操作消息包含所述第一用户端的所述令牌和所述第一用户端当前操作Web页面产生的业务数据,其中所述第一用户端为所述多个用户端中的任一用户端。
其中,所述服务端用于:解析所述操作消息以得到所述第一用户端的所述令牌和所述业务数据;响应于所述第一用户端的所述令牌为合法令牌,对所述业务数据进行响应并基于所述业务数据生成包含所述第一用户端的所述令牌的推送消息;以及广播所述推送消息至所述多个用户端。
进一步地,所述第一用户端还用于:判断所述推送消息中包含的令牌与所述第一用户端的所述令牌是否一致;在判断所述推送消息中包含的令牌与所述第一用户端的所述令牌一致的情况下,放弃响应所述推送消息。
图3b为所述数据同步系统中所述第二用户端执行数据同步方法的流程图,如图3b所示,第二用户端用于:通过所述目标协议连接接收所述服务端广播的所述推送消息;判断所述推送消息中包含的令牌与所述第二用户端的所述令牌是否一致;在判断所述推送消息中包含的令牌与所述第二用户端的所述令牌不一致的情况下,基于所述推送消息中包含的业务数据判断所述推送消息是否为所述第二用户端当前操作Web页面的业务消息;以及响应于判断所述推送消息是所述第二用户端当前操作Web页面的业务消息,根据所述业务数据对所述第二用户端当前操作Web页面进行更新操作;或者响应于判断所述推送消息不是所述第二用户端当前操作Web页面的业务消息,放弃响应所述推送消息,其中所述第二用户端为所述多个用户端中除所述第一用户端之外的任一用户端。
本实施例提供的数据同步系统用于实现如第一实施例所述的数据同步方法,为了简洁在此不再赘述,且本实施例提供的数据同步系统的有益效果与第一实施例提供的数据同步方法的有益效果相同。
【第四实施例】
图4为本发明第四实施例提供的一种数据同步系统。如图4所示,数据同步系统40包括:存储器42和连接存储器42的一个或多个处理器41。存储器42存储有计算机程序,处理器41用于执行所述计算机程序以实现如第一实施例和所述的数据同步方法,为了简洁在此不再赘述,且本实施例提供的数据同步系统40的有益效果与第一实施例提供的数据同步方法的有益效果相同。
【第五实施例】
图5为本发明第五实施例提供的一种计算机可读存储介质。如图5所示,计算机可读存储介质50为非易失性存储器且存储有程序代码,当所述程序代码被一个或多个处理器执行时,例如使得所述一个或多个处理器执行前述第一实施例所述的数据同步方法。具体的数据同步方法可参考第一实施例所述的方法,为了简洁在此不再赘述,且本实施例提供的计算机可读存储介质50的有益效果同第一实施例提供的数据同步方法的有益效果相同。
此外,可以理解的是,前述各个实施例仅为本发明的示例性说明,在技术特征不冲突、结构不矛盾、不违背本发明的发明目的前提下,各个实施例的技术方案可以任意组合、搭配使用。
在本发明所提供的几个实施例中,应该理解到,所揭露的系统,装置和/或方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元/模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多路单元或模块可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元/模块可以是或者也可以不是物理上分开的,作为单元/模块显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多路网络单元上。可以根据实际的需要选择其中的部分或者全部单元/模块来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元/模块可以集成在一个处理单元/模块中,也可以是各个单元/模块单独物理存在,也可以两个或两个以上单元/模块集成在一个单元/模块中。上述集成的单元/模块既可以采用硬件的形式实现,也可以采用硬件加软件功能单元/模块的形式实现。
上述以软件功能单元/模块的形式实现的集成的单元/模块,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)的一个或多个处理器执行本发明各个实施例所述方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,简称ROM)、随机存取存储器(Random Access Memory,简称RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (9)
1.一种数据同步方法,其特征在于 ,包括多个用户端,所述多个用户端包括第一用户端和第二用户端,所述方法包括:
所述第一用户端登录服务端以获取所述第一用户端对应的令牌并与所述服务端建立目标协议连接;
所述第一用户端通过所述目标协议连接所述服务端,并向所述服务端发送操作消息,所述操作消息包括所述第一用户端对应的令牌和所述第一用户端执行业务产生的业务数据;
所述第一用户端通过所述目标协议接收所述服务端根据所述操作消息生成的推送消息,所述推送消息包括所述多个用户端对应的令牌和执行所述业务生成的业务数据;
所述第一用户端判断所述推送消息中包含的所述执行业务的所述多个用户端对应的令牌与获取的所述所述第一用户端对应的令牌是否一致;
所述第一用户端在判断所述推送消息中包含的令牌与获取的所述第一用户端对应的令牌一致的情况下,放弃响应所述推送消息;
所述第二用户端登录服务端以获取所述第二用户端对应的令牌并与所述服务端建立目标协议连接;
所述第二用户端通过所述目标协议连接接收所述服务端广播的所述推送消息;
所述第二用户端判断所述推送消息中包含的令牌与所述第二用户端对应的令牌是否一致;
所述第二用户端在判断所述推送消息中包含的令牌与所述第二用户端的所述令牌不一致的情况下,基于所述推送消息中包含的业务数据判断所述推送消息是否为所述第二用户端当前操作Web页面的业务消息;以及
响应于判断所述推送消息是所述第二用户端当前操作Web页面的业务消息,根据所述业务数据对所述第二用户端当前操作Web页面进行更新操作;或者响应于判断所述推送消息不是所述第二用户端当前操作Web页面的业务消息,放弃响应所述推送消息。
2.根据权利要求1所述的数据同步方法,其特征在于,还包括:
所述第一用户端在判断所述推送消息中包含的所述执行业务的多个用户端对应的令牌与获取的所述第一用户端对应的令牌不一致的情况下,基于所述推送消息中包含的业务数据判断所述推送消息是否为所述第一用户端当前操作Web页面的业务消息;以及
响应于判断所述推送消息是所述第一用户端当前操作Web页面的业务消息,根据所述业务数据对所述第一用户端当前操作Web页面进行更新操作;或者响应于判断所述推送消息不是所述第一用户端当前操作Web页面的业务消息,放弃响应所述推送消息。
3.根据权利要求1所述的数据同步方法,其特征在于,还包括:
所述第一用户端通过所述目标协议连接向所述服务端发送操作消息,其中所述操作消息包含获取的所述第一用户端对应的令牌和当前操作Web页面产生的业务数据,以供所述服务端生成所述推送消息。
4.根据权利要求1所述的数据同步方法,其特征在于,所述目标协议连接为WebSocket连接,且所述服务端为视频拼接器。
5.一种数据同步装置,其特征在于,包括:
连接建立模块,用于登录服务端以获取多个用户端中所述第一用户端和所述第二用户端对应的令牌并与所述服务端建立目标协议连接;
消息接收模块,用于通过所述目标协议连接接收所述服务端广播的推送消息,所述推送消息包括执行业务的所述多个用户端对应的令牌和执行业务生成的业务数据;
令牌判断模块,用于判断所述推送消息中包含的执行业务的所述多个用户端对应的令牌与获取的所述第一用户端和所述第二用户端对应的令牌是否一致;
消息处理模块,用于在判断所述推送消息中包含的所述执行业务的所述多个用户端对应的令牌与获取的所述第一用户端和所述第二用户端对应的令牌一致的情况下,放弃响应所述推送消息。
6.根据权利要求5所述的数据同步装置,其特征在于,所述消息处理模块还用于:
在判断所述推送消息中包含的所述执行业务的所述多个用户端对应的令牌与获取的所述第一用户端对应的令牌不一致的情况下,基于所述推送消息中包含的业务数据判断所述推送消息是否为所述第一用户端当前操作Web页面的业务消息;以及
响应于判断所述推送消息是所述第一用户端当前操作Web页面的业务消息,根据所述业务数据对所述第一用户端当前操作Web页面进行更新操作;或者响应于判断所述推送消息不是所述第一用户端当前操作Web页面的业务消息,放弃响应所述推送消息。
7.根据权利要求5所述的数据同步装置,其特征在于,还包括:
消息发送模块,用于通过所述目标协议连接向所述服务端发送操作消息,其中所述操作消息包含获取的所述第一用户端对应的令牌和当前操作Web页面产生的业务数据,以供所述服务端生成所述推送消息。
8.一种数据同步系统,其特征在于,包括 :
服务端;以及
多个用户端,用于分别登录所述服务端以获取不同的令牌并与所述服务端建立目标协议连接;
其中,第一用户端用于:
通过所述目标协议连接向所述服务端发送操作消息,其中所述操作消息包含所述第一用户端的所述令牌和所述第一用户端当前操作Web页面产生的业务数据,其中所述第一用户端为所述多个用户端中的任一用户端;
其中,所述服务端用于:
解析所述操作消息以得到所述第一用户端的所述令牌和所述业务数据;
响应于所述第一用户端的所述令牌为合法令牌,对所述业务数据进行响应并基于所述业务数据生成包含所述第一用户端的所述令牌的推送消息;以及
广播所述推送消息至所述多个用户端;
其中,第二用户端用于:
通过所述目标协议连接接收所述服务端广播的所述推送消息;
判断所述推送消息中包含的令牌与所述第二用户端的所述令牌是否一致;
在判断所述推送消息中包含的令牌与所述第二用户端的所述令牌不一致的情况下,基于所述推送消息中包含的业务数据判断所述推送消息是否为所述第二用户端当前操作Web页面的业务消息;以及
响应于判断所述推送消息是所述第二用户端当前操作Web页面的业务消息,根据所述业务数据对所述第二用户端当前操作Web页面进行更新操作;或者响应于判断所述推送消息不是所述第二用户端当前操作Web页面的业务消息,放弃响应所述推送消息,其中所述第二用户端为所述多个用户端中除所述第一用户端之外的任一用户端;
其中,所述第一用户端还用于:
判断所述推送消息中包含的令牌与所述第一用户端的所述令牌是否一致;
在判断所述推送消息中包含的令牌与所述第一用户端的所述令牌一致的情况下,放弃响应所述推送消息。
9.一种数据同步系统,其特征在于,包括 :
处理器和存储器;其中所述存储器存储有所述处理器执行的指令,且所述指令使得所述处理器执行操作以进行如权利要求1至4中任意一项所述的数据同步方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911330335.9A CN113014615B (zh) | 2019-12-20 | 2019-12-20 | 数据同步方法、装置和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911330335.9A CN113014615B (zh) | 2019-12-20 | 2019-12-20 | 数据同步方法、装置和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113014615A CN113014615A (zh) | 2021-06-22 |
CN113014615B true CN113014615B (zh) | 2023-11-14 |
Family
ID=76382188
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911330335.9A Active CN113014615B (zh) | 2019-12-20 | 2019-12-20 | 数据同步方法、装置和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113014615B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113656131B (zh) * | 2021-08-16 | 2024-07-26 | 维沃移动通信有限公司 | 远程控制方法、装置、电子设备及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102523532A (zh) * | 2011-11-30 | 2012-06-27 | 苏州奇可思信息科技有限公司 | 具有多画面同步输出的会议现场课件输出方法 |
CN103597465A (zh) * | 2011-06-15 | 2014-02-19 | 微软公司 | 高效的状态协调 |
CN104767775A (zh) * | 2014-01-06 | 2015-07-08 | 腾讯科技(深圳)有限公司 | 网页应用消息推送方法及系统 |
CN109379369A (zh) * | 2018-11-09 | 2019-02-22 | 中国平安人寿保险股份有限公司 | 单点登录方法、装置、服务器及存储介质 |
CN109905312A (zh) * | 2017-12-08 | 2019-06-18 | 北京新媒传信科技有限公司 | 消息推送方法、装置及系统 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6941326B2 (en) * | 2001-01-24 | 2005-09-06 | Microsoft Corporation | Accounting for update notifications in synchronizing data that may be represented by different data structures |
-
2019
- 2019-12-20 CN CN201911330335.9A patent/CN113014615B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103597465A (zh) * | 2011-06-15 | 2014-02-19 | 微软公司 | 高效的状态协调 |
CN102523532A (zh) * | 2011-11-30 | 2012-06-27 | 苏州奇可思信息科技有限公司 | 具有多画面同步输出的会议现场课件输出方法 |
CN104767775A (zh) * | 2014-01-06 | 2015-07-08 | 腾讯科技(深圳)有限公司 | 网页应用消息推送方法及系统 |
CN109905312A (zh) * | 2017-12-08 | 2019-06-18 | 北京新媒传信科技有限公司 | 消息推送方法、装置及系统 |
CN109379369A (zh) * | 2018-11-09 | 2019-02-22 | 中国平安人寿保险股份有限公司 | 单点登录方法、装置、服务器及存储介质 |
Non-Patent Citations (1)
Title |
---|
基于手机令牌方式的动态身份认证系统;曾伟国等;《计算机与数字工程》;20050220(第01期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN113014615A (zh) | 2021-06-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108833950B (zh) | 一种弹幕消息下发方法、服务器、系统和存储介质 | |
CN105991412B (zh) | 消息推送方法及装置 | |
WO2021237433A1 (zh) | 消息推送方法、装置、电子设备及计算机可读介质 | |
US10958735B2 (en) | Client connection method and system | |
CN109547524B (zh) | 基于物联网的用户行为存储方法、装置、设备及存储介质 | |
CN108200219A (zh) | 数据同步方法、装置、服务器及存储介质 | |
CN102638417A (zh) | 信息的通信方法、装置及系统 | |
CN106411629B (zh) | 一种用于监控cdn节点的状态的方法和设备 | |
EP2605460A1 (en) | Method, apparatus, and system for transferring file to user of instant message system | |
KR101774983B1 (ko) | Ott 비디오의 품질을 모니터링하는 방법, 장치, 및 시스템 | |
CN113824723B (zh) | 一种应用于音视频数据传输的端到端系统解决方法 | |
CN109428864B (zh) | 提高nginx-rtmp拉流服务质量的方法及装置 | |
WO2016086755A1 (zh) | 一种报文处理的方法和透明代理服务器 | |
CN108243222A (zh) | 服务器网络架构方法及装置 | |
CN113014615B (zh) | 数据同步方法、装置和系统 | |
CN107872492B (zh) | 一种在服务端支持多用户编辑数据对象的方法和装置 | |
CN103716230A (zh) | 消息发送方法、装置及服务器 | |
US10412778B2 (en) | Data transmission method and apparatus for data service | |
CN112532714B (zh) | 一种数据处理方法、处理装置、服务器及存储介质 | |
CN109766347B (zh) | 一种数据更新方法、装置、系统、计算机设备及存储介质 | |
CN105577758A (zh) | 一种页面心跳信息处理方法及客户端 | |
CN104468767A (zh) | 一种云存储数据冲突检测方法及系统 | |
CN113489786B (zh) | 一种长连接网络弱网重连方法、重发方法 | |
CN111385324A (zh) | 一种数据通信方法、装置、设备和存储介质 | |
CN111901366B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20240717 Address after: 01A, 12th Floor, No. 8 Caihefang Road, Haidian District, Beijing, 100000 Patentee after: PIXELHUE TECHNOLOGY Ltd. Country or region after: China Address before: 710075 DEF101, Zero One Square, Xi'an Software Park, No. 72 Zhangbajie Science and Technology Second Road, Xi'an High-tech Zone, Shaanxi Province Patentee before: XI'AN NOVASTAR TECH Co.,Ltd. Country or region before: China |