CN106230978A - 分布式缓存同步方法、装置及系统 - Google Patents
分布式缓存同步方法、装置及系统 Download PDFInfo
- Publication number
- CN106230978A CN106230978A CN201610793659.6A CN201610793659A CN106230978A CN 106230978 A CN106230978 A CN 106230978A CN 201610793659 A CN201610793659 A CN 201610793659A CN 106230978 A CN106230978 A CN 106230978A
- Authority
- CN
- China
- Prior art keywords
- caching
- web terminal
- event
- application program
- server
- 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 35
- 230000001360 synchronised effect Effects 0.000 title claims abstract description 34
- 230000005540 biological transmission Effects 0.000 claims description 9
- 238000012423 maintenance Methods 0.000 abstract description 10
- 238000004891 communication Methods 0.000 description 17
- 238000000151 deposition Methods 0.000 description 4
- 230000003111 delayed effect Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 2
- 230000010365 information processing Effects 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 238000009738 saturating 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/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/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/568—Storing data temporarily at an intermediate stage, e.g. caching
- H04L67/5682—Policies or rules for updating, deleting or replacing the stored data
-
- 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
-
- 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/54—Presence management, e.g. monitoring or registration for receipt of user log-on information, or the connection status of the users
-
- 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/56—Provisioning of proxy services
- H04L67/566—Grouping or aggregating service requests, e.g. for unified processing
-
- 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/56—Provisioning of proxy services
- H04L67/568—Storing data temporarily at an intermediate stage, e.g. caching
-
- 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/60—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Transfer Between Computers (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供一种分布式缓存同步方法及系统,包括:第一WEB终端根据数据库更新指令清除所述第一WEB终端上的应用程序的缓存中、与所述数据库更新指令的数据标识对应的缓存数据,并发送清除缓存事件至服务器;所述清除缓存事件包括所述数据标识;所述服务器将接收的所述清除缓存事件,广播至第二WEB终端;所述第二WEB终端根据接收的所述清除缓存事件,清除所述第二WEB终端上的应用程序的缓存中、与所述数据标识对应的缓存数据。本发明还提供一种运行于WEB终端的分布式缓存同步装置,以及一种运行于服务器的分布式缓存同步方法及装置。上述分布式缓存同步方法、装置及系统的维护成本低。
Description
技术领域
本发明涉及计算机信息处理技术领域,尤其涉及一种分布式缓存同步方法、装置及系统。
背景技术
缓存在行业中,最先出现的是集中式缓存,就是多台WEB终端(或应用程序)通过网络连接一台缓存终端。当这台集中式缓存的终端无法承受和响应多台WEB(或应用程序)的高并发请求时,分布式缓存应运而生。分布式缓存就是多台缓存终端同时向多台WEB终端(或应用程序)提供缓存响应。
传统的分布式缓存,存在一个难题:各缓存终端之间的缓存同步通讯问题。多台缓存终端之间的通讯非常复杂,每新增一台缓存终端都要修改各台缓存终端的配置,告诉各缓存终端,有新成员进来。因此,传统的分布式缓存同步方法,维护成本高。
发明内容
基于此,有必要针对传统的分布式缓存同步方法维护成本高的问题,提供一种降低维护成本的分布式缓存同步方法、装置及系统。
一种分布式缓存同步方法,包括:
第一WEB终端根据数据库更新指令清除所述第一WEB终端上的应用程序的缓存中、与所述数据库更新指令的数据标识对应的缓存数据,并发送清除缓存事件至服务器;所述清除缓存事件包括所述数据标识;
所述服务器将接收的所述清除缓存事件,广播至第二WEB终端;
所述第二WEB终端根据接收的所述清除缓存事件,清除所述第二WEB终端上的应用程序的缓存中、与所述数据标识对应的缓存数据。
一种分布式缓存同步系统,包括:
第一WEB终端,用于根据数据库更新指令清除所述第一WEB终端上的应用程序的缓存中、与所述数据库更新指令的数据标识对应的缓存数据,并发送清除缓存事件至服务器;所述清除缓存事件包括所述数据标识;
所述服务器,用于将接收的所述清除缓存事件,广播至第二WEB终端;
所述第二WEB终端,用于根据接收的所述清除缓存事件,清除所述第二WEB终端上的应用程序的缓存中、与所述数据标识对应的缓存数据。
一种分布式缓存同步装置,设置于WEB终端上,包括:
事件发送广播模块,用于根据数据库更新指令清除自身WEB终端的应用程序的缓存中、与所述数据库更新指令的数据标识对应的缓存数据,并发送清除缓存事件至服务器,由所述服务器将WEB终端发送的清除缓存事件,广播至同步WEB终端;WEB终端发送的清除缓存事件包括所述数据标识;
事件接收执行模块,用于接收由同步WEB终端发送、经服务器广播的清除缓存事件,并根据接收到的清除缓存事件,清除自身WEB终端的应用程序的缓存中、与接收到的清除缓存事件中的数据标识对应的缓存数据。
一种分布式缓存同步方法,运行于服务器上,包括:
接收第一WEB终端根据数据库更新指令清除所述第一WEB终端上的应用程序的缓存中、与所述数据库更新指令的数据标识对应的缓存数据之后,发送的清除缓存事件;所述清除缓存事件包括所述数据标识;
将接收的所述清除缓存事件广播至第二WEB终端,由第二WEB终端根据接收的所述清除缓存事件,清除所述第二WEB终端上的应用程序的缓存中、与所述数据标识对应的缓存数据。
一种分布式缓存同步装置,设置于服务器上,包括:
事件接收模块,用于接收第一WEB终端根据数据库更新指令清除所述第一WEB终端上的应用程序的缓存中、与所述数据库更新指令的数据标识对应的缓存数据之后,发送的清除缓存事件;所述清除缓存事件包括所述数据标识;
事件转发模块,用于将接收的所述清除缓存事件广播至第二WEB终端,由第二WEB终端根据接收的所述清除缓存事件,清除所述第二WEB终端上的应用程序的缓存中、与所述数据标识对应的缓存数据。
上述分布式缓存同步方法、装置及系统,可以实现各WEB终端上的应用程序的缓存同步;而在进行维护时,若有新的WEB终端加入,仅需要在该WEB终端的应用程序中配置服务器的地址信息,以使服务器与该WEB终端建立通信链接即可,无需修改别的WEB终端应用程序的配置。因此,上述分布式缓存同步方法及装置的维护成本低。
附图说明
图1为一实施例的分布式缓存同步方法的流程图;
图2为另一实施例的分布式缓存同步方法的流程图;
图3为一个具体实施例的分布式缓存同步方法中服务器、WEB终端及数据库的关系图;
图4为一实施例的分布式缓存同步系统的结构图;
图5为一运行于WEB终端的实施例的分布式缓存同步装置的结构图;
图6为一运行于服务器的实施例的分布式缓存同步方法的流程图;
图7为另一运行于服务器的实施例的分布式缓存同步方法的流程图;
图8为一设置于服务器的实施例的分布式缓存同步装置的结构图;
图9为另一设置于服务器的实施例的分布式缓存同步装置的结构图。
具体实施方式
为了便于理解本发明,下面将参照相关附图对本发明进行更全面的描述。附图中给出了本发明的较佳的实施例。但是,本发明可以以许多不同的形式来实现,并不限于本文所描述的实施例。相反地,提供这些实施例的目的是使对本发明的公开内容的理解更加透彻全面。
除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本文中在本发明的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本发明。本文所使用的术语“或/和”包括一个或多个相关的所列项目的任意的和所有的组合。
如图1所示,为本发明一实施例的分布式缓存同步方法,包括:
S120:第一WEB终端根据数据库更新指令清除所述第一WEB终端上的应用程序的缓存中、与所述数据库更新指令的数据标识对应的缓存数据,并发送清除缓存事件至服务器。所述清除缓存事件包括所述数据标识。
第一WEB终端为发起数据库更新指令的应用程序所部署于的WEB终端。WEB终端为可以访问网页的智能终端。数据库更新指令用于指示修改数据库的数据或删除数据库的数据。当应用程序需要修改或删除数据库的数据时,第一WEB终端将生成一个数据库更新指令,第一WEB终端根据该数据库更新指令,清除第一WEB终端上的应用程序的缓存中、与该数据库更新指令的数据标识对应的缓存数据。
具体地,数据库更新指令包括更新动作及数据标识。更新动作为数据库更新指令需要完成的操作动作;数据标识为数据库更新指令的操作对象的标识,优选地,该标识为数据库更新指令的操作对象的唯一标识。可以理解的,数据库更新指令的操作对象是数据库中的数据。在应用程序对数据库中的数据进行读取时,首先需要将数据库数据读取到缓存中,形成缓存数据。该缓存数据与数据库数据具有相同的数据标识。如此,若该数据库数据并未被修改或删除,在后续读取数据库数据时,可以直接读取该数据库数据的数据标识对应的缓存中的缓存数据。
为了使分布式缓存中的其它缓存与第一WEB终端上设置的缓存同步,需要发送清除缓存事件至服务器,以进一步清除其它WEB终端上的缓存。可以理解地,清除缓存事件包括数据库更新指令中的数据标识。
S140:所述服务器将接收的所述清除缓存事件,广播至第二WEB终端。
服务器为协同各WEB终端工作的通讯服务器,可以是一个通讯服务端主机。服务终端将接收到的第一WEB终端发送的清除缓存事件,广播至第二WEB终端。第二WEB终端为配置有与第一WEB终端的应用程序操作的数据库相同的应用程序,并对应配置有相应的缓存,为保证数据的一致性,该缓存中的缓存数据需与第一WEB终端的缓存中的缓存数据保持同步。因此,在第一WEB终端根据数据库更新指令清除所述第一WEB终端上的应用程序的缓存中、与所述数据库更新指令的数据标识对应的缓存数据之后,需要将清除缓存事件通过服务器转发至第二WEB终端,以进行第二WEB终端中的缓存数据的清除,从而保证数据的一致性。
在一个具体实施例中,服务器接收到清除缓存事件后,先对该清除缓存事件进行存储,然后再广播至各第二WEB终端。如此,对清除缓存事件进行保存,也可供后续查看或其它程序调用。
S160:所述第二WEB终端根据接收的所述清除缓存事件,清除所述第二WEB终端上的应用程序的缓存中、与所述数据标识对应的缓存数据。
第二WEB终端接收服务器广播的清除缓存事件,并根据接收的清除缓存事件,清除第二WEB终端上的缓存中、与数据标识对应的缓存数据。如此,实现各WEB终端上的应用程序的缓存同步。
上述分布式缓存同步方法,第一WEB终端根据数据库更新指令清除所述第一WEB终端上的应用程序的缓存中、与所述数据库更新指令的数据标识对应的缓存数据,并发送清除缓存事件至服务器;所述清除缓存事件包括所述数据标识;所述服务器将接收的所述清除缓存事件,广播至第二WEB终端;所述第二WEB终端根据接收的所述清除缓存事件,清除所述第二WEB终端上的应用程序的缓存中、与所述数据标识的缓存数据。如此,实现各WEB终端上的应用程序的缓存同步;而在进行维护时,若有新的WEB终端加入,仅需要在该WEB终端的应用程序中配置服务器的地址信息,以使服务器与该WEB终端建立通信链接即可,无需修改别的WEB终端应用程序的配置。因此,上述分布式缓存同步方法的维护成本低。
在其中一个实施例中,缓存部署于调用所述缓存的应用程序所部署的WEB终端上。如此,避免部署缓存的缓存终端与WEB终端之间,因WEB终端上的应用程序在访问缓存时,需要大量的数据传输而消耗大量网络资源。
更具体地,所述缓存为JVM缓存,从而使得缓存与应用程序部署在同一WEB终端上。
需要说明的是,传统的非JVM缓存或者未与调用缓存的应用程序部署在同一WEB终端上的缓存,在浏览器向WEB终端请求数据库数据时,浏览器向WEB终端发送请求后,WEB终端需要通过网络向缓存所在的终端发送请求,并通过网络接收该数据库数据对应的缓存数据。根据浏览器向WEB终端发送的请求进行处理之后,WEB终端再将该数据库数据返回至浏览器。其中,WEB终端在通过网络接收该数据库数据对应的缓存数据,以及将该数据库数据返回至浏览器时,需要消耗不低于浏览器请求的数据库数据的两倍大小的带宽资源。而本方案,缓存部署于调用所述缓存的应用程序所部署的WEB终端上,具体可以为JVM缓存。在浏览器向WEB终端请求数据库数据时,浏览器向WEB终端发送请求后,WEB终端不需要通过网络向缓存所在的终端发送请求,也不需要通过网络接收该数据库数据对应的缓存数据。因此,可以节约网络资源。
请参阅图2,在其中一个实施例中,所述服务器将接收的所述清除缓存事件,广播至第二WEB终端的步骤之前,还包括步骤:
S210:所述第二WEB终端发送订阅信息至所述服务器;所述订阅信息包括订阅类型,所述订阅类型为与所述第二WEB终端的应用程序相关的清除缓存事件的信息。
订阅类型可具体为第二WEB终端的应用程序的标识,或二WEB终端的应用程序操作的数据库的标识。与所述第二WEB终端的应用程序相关的清除缓存事件,即为与第二WEB终端的应用程序的标识对应的应用程序的清除缓存事件,或与第二WEB终端的应用程序操作的数据库的标识对应的数据库的清除缓存事件。更具体地,订阅信息及应用程序相关的清除缓存事件的信息中均包括数据标识。
如此,使服务器知晓第二WEB终端上部署的应用程序所操作的数据库数据是否与第一WEB终端上部署的应用程序所操作的数据库数据相同,从而,使服务器在接收到第一WEB终端发送的清除缓存事件之后,根据该清除缓存时间及数据库更新指令可以确定广播的对象,即第二WEB终端。
进一步地,所述第二WEB终端获取所述服务器的地址信息,并根据所述地址信息发送订阅信息至所述服务器。
在本实施例中,当有新的WEB终端加入时,需要在该WEB终端的应用程序中配置服务器的地址信息,以使服务器与该WEB终端建立通信链接。如此,第二WEB终端可以根据所述地址信息发送订阅信息至所述服务器;服务器也可以通过建立的通信链接发送广播的清除缓存事件至第二WEB终端。
请继续参阅图2,在其中一个实施例中,所述第二WEB终端根据接收的所述清除缓存事件,清除所述第二WEB终端上的应用程序的缓存中、与所述数据库更新指令的数据标识对应的缓存数据的步骤之后,还包括:
S270:所述第一WEB终端发送所述数据库更新指令至数据库终端。
如此,由数据库终端对数据库执行所述数据库更新指令。数据库终端为部署有数据库操作指令操作的数据库的终端。
进一步地,步骤S270之后,还包括:
S280:所述数据库终端对数据库执行所述数据库更新指令。
数据库终端可以根据数据库更新指令的更新动作及数据标识,对数据库中所述数据标识对应的数据完成所述更新动作,如此,执行数据库更新指令。从而,使缓存中的数据与数据库中的数据保持一致。
在一个具体实施例中,请参阅图3,服务器为通讯服务端主机,缓存为JVM(JavaVirtual Machine,Java虚拟机)缓存,WEB终端为WEB主机。应用程序部署在WEB主机上,应用程序包括JVM缓存及客户端。
服务端主机的功能包括:
(1)接收WEB主机的客户端发送的订阅信息和接收WEB主机发送的清除缓存事件的功能。
(2)存储WEB主机的客户端的通信链接。
(3)存储WEB主机的客户端发送的清除缓存事件的功能。
(4)向WEB主机的客户端广播该WEB主机的订阅信息所涉及的清除缓存事件。
WEB主机的客户端的功能,包括:
(1)向通讯服务端主机订阅感兴趣事件的功能,即发送订阅信息的功能。
(2)向通讯服务端主机发送清除缓存事件的功能。
(3)接收通讯服务端主机广播的清除缓存事件的功能。
请参阅图4,本发明还提供一种与上述分布式缓存同步方法对应的分布式缓存同步系统,包括:
第一WEB终端420,用于根据数据库更新指令清除所述第一WEB终端420上的应用程序的缓存中、与所述数据库更新指令的数据标识对应的缓存数据,并发送清除缓存事件至服务器440;所述清除缓存事件包括所述数据标识;
所述服务器440,用于将接收的所述清除缓存事件,广播至第二WEB终端460;
所述第二WEB终端460,用于根据接收的所述清除缓存事件,清除所述第二WEB终端460上的应用程序的缓存中、与所述数据标识对应的缓存数据。
上述分布式缓存同步系统,第一WEB终端420根据数据库更新指令清除所述第一WEB终端420上的应用程序的缓存中、与所述数据库更新指令的数据标识对应的缓存数据,并发送清除缓存事件至服务器440;所述清除缓存事件包括所述数据标识;所述服务器440将接收的所述清除缓存事件,广播至第二WEB终端460;所述第二WEB终端460根据接收的所述清除缓存事件,清除所述第二WEB终端460上的应用程序的缓存中、与所述数据标识对应的缓存数据。如此,实现各WEB终端上的应用程序的缓存同步;而在进行维护时,若有新的WEB终端加入,仅需要在该WEB终端的应用程序中配置服务器的地址信息,以使服务器与该WEB终端建立通信链接即可,无需修改别的WEB终端应用程序的配置。因此,上述分布式缓存同步系统的维护成本低。
在其中一个实施例中,缓存部署于调用所述缓存的应用程序所部署的WEB终端上。
在其中一个实施例中,所述第二WEB终端460,还用于发送订阅信息至所述服务器440;所述订阅信息包括订阅类型,所述订阅类型为与所述第二WEB终端460的应用程序相关的清除缓存事件的信息。
在其中一个实施例中,第二WEB终端460获取所述服务器的地址信息,并根据所述地址信息发送订阅信息至所述服务器。
在其中一个实施例中,所述第一WEB终端420,还用于在所述第二WEB终端460根据接收的所述清除缓存事件,清除所述第二WEB终端460上的应用程序的缓存中、与所述数据标识对应的缓存数据之后,发送所述数据库更新指令至数据库终端480。
在其中一个实施例中,还包括:
数据库终端480,用于对数据库执行所述数据库更新指令。
请参阅图5,本发明还提供一种设置于WEB终端的、与上述分布式缓存同步方法对应的分布式缓存同步装置,包括:
事件发送广播模块520,用于根据数据库更新指令清除自身WEB终端的应用程序的缓存中、与所述数据库更新指令的数据标识对应的缓存数据,并发送清除缓存事件至服务器,由所述服务器将WEB终端发送的清除缓存事件,广播至同步WEB终端;WEB终端发送的清除缓存事件包括所述数据标识;
事件接收执行模块540,用于接收由同步WEB终端发送、经服务器广播的清除缓存事件,并根据接收到的清除缓存事件,清除自身WEB终端的应用程序的缓存中、与接收到的清除缓存事件中的数据标识对应的缓存数据。
这里的自身WEB终端,即为运行上述分布式缓存同步装置的WEB终端;同步WEB终端,为与该自身WEB终端配合工作的其它WEB终端。
上述分布式缓存同步装置,事件发送广播模块520根据数据库更新指令清除自身WEB终端的应用程序的缓存中、与所述数据库更新指令的数据标识对应的缓存数据,并发送清除缓存事件至服务器,由所述服务器将WEB终端发送的清除缓存事件,广播至同步WEB终端;WEB终端发送的清除缓存事件包括所述数据标识;事件接收执行模块540,接收由同步WEB终端发送、经服务器广播的清除缓存事件,并根据接收到的清除缓存事件,清除自身WEB终端的应用程序的缓存中、与接收到的清除缓存事件中的数据标识对应的缓存数据。如此,实现各WEB终端上的应用程序的缓存同步;而在进行维护时,若有新的WEB终端加入,仅需要在该WEB终端的应用程序中配置服务器的地址信息,以使服务器与该WEB终端建立通信链接即可,无需修改别的WEB终端应用程序的配置。因此,上述分布式缓存同步装置的维护成本低。
在其中一个实施例中,缓存部署于调用所述缓存的应用程序所部署的WEB终端上。
在其中一个实施例中,还包括:
订阅信息发送模块510,用于发送订阅信息至所述服务器;所述订阅信息包括订阅类型,所述订阅类型为与自身WEB终端的应用程序相关的清除缓存事件的信息。
进一步地,订阅信息发送模块510获取所述服务器的地址信息,并根据所述地址信息发送订阅信息至所述服务器。
在其中一个实施例中,还包括:
更新指令发送模块580,用于发送所述数据库更新指令至数据库终端,由所述数据库终端对数据库执行所述数据库更新指令。
请参阅图6,本发明还提供一种运行于服务器、与上述分布式缓存同步方法对应的分布式缓存同步方法,包括:
S620:接收第一WEB终端根据数据库更新指令清除所述第一WEB终端上的应用程序的缓存中、与所述数据库更新指令的数据标识对应的缓存数据之后,发送的清除缓存事件;所述清除缓存事件包括所述数据标识;
S640:将接收的所述清除缓存事件广播至第二WEB终端,由第二WEB终端根据接收的所述清除缓存事件,清除所述第二WEB终端上的应用程序的缓存中、与所述数据标识对应的缓存数据。
上述分布式缓存同步方法,接收第一WEB终端根据数据库更新指令清除所述第一WEB终端上的应用程序的缓存中、与所述数据库更新指令的数据标识对应的缓存数据之后,发送的清除缓存事件;所述清除缓存事件包括所述数据标识;将接收的所述清除缓存事件广播至第二WEB终端,由第二WEB终端根据接收的所述清除缓存事件,清除所述第二WEB终端上的应用程序的缓存中、与所述数据标识对应的缓存数据。如此,实现各WEB终端上的应用程序的缓存同步;而在进行维护时,若有新的WEB终端加入,仅需要在该WEB终端的应用程序中配置服务器的地址信息,以使服务器与该WEB终端建立通信链接即可,无需修改别的WEB终端应用程序的配置。因此,上述分布式缓存同步方法的维护成本低。
在其中一个实施例中,缓存部署于调用所述缓存的应用程序所部署的WEB终端上。
请参阅图7,在其中一个实施例中,将接收的所述清除缓存事件广播至第二WEB终端,由第二WEB终端根据接收的所述清除缓存事件,清除所述第二WEB终端上的应用程序的缓存中、与所述数据库更新指令的数据标识对应的缓存数据的步骤之前,还包括:
S710:接收第二WEB终端发送的订阅信息;所述订阅信息包括订阅类型,所述订阅类型为与所述第二WEB终端的应用程序相关的清除缓存事件的信息。
具体地,接收第二WEB终端在获取所述服务器的地址信息后,根据所述地址信息发送的订阅信息。
请参阅图8,本发明还提供一种设置于服务器、与上述分布式缓存同步方法对应的分布式缓存同步装置,包括:
事件接收模块820,用于接收第一WEB终端根据数据库更新指令清除所述第一WEB终端上的应用程序的缓存中、与所述数据库更新指令的数据标识对应的缓存数据之后,发送的清除缓存事件;所述清除缓存事件包括所述数据标识;
事件转发模块840,用于将接收的所述清除缓存事件广播至第二WEB终端,由第二WEB终端根据接收的所述清除缓存事件,清除所述第二WEB终端上的应用程序的缓存中、与所述数据标识对应的缓存数据。
上述分布式缓存同步装置,接收第一WEB终端根据数据库更新指令清除所述第一WEB终端上的应用程序的缓存中、与所述数据库更新指令的数据标识对应的缓存数据之后,发送的清除缓存事件;所述清除缓存事件包括所述数据标识;将接收的所述清除缓存事件广播至第二WEB终端,由第二WEB终端根据接收的所述清除缓存事件,清除所述第二WEB终端上的应用程序的缓存中、与所述数据标识对应的缓存数据。如此,实现各WEB终端上的应用程序的缓存同步;而在进行维护时,若有新的WEB终端加入,仅需要在该WEB终端的应用程序中配置服务器的地址信息,以使服务器与该WEB终端建立通信链接即可,无需修改别的WEB终端应用程序的配置。因此,上述分布式缓存同步装置的维护成本低。
在其中一个实施例中,缓存部署于调用所述缓存的应用程序所部署的WEB终端上。
请参阅图9,在其中一个实施例中,还包括:
订阅接收模块910,用于接收第二WEB终端发送的订阅信息;所述订阅信息包括订阅类型,所述订阅类型为与所述第二WEB终端的应用程序相关的清除缓存事件的信息。
具体地,订阅接收模块910接收第二WEB终端在获取所述服务器的地址信息后,根据所述地址信息发送的订阅信息。
以上实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出多个变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。
Claims (10)
1.一种分布式缓存同步方法,其特征在于,包括:
第一WEB终端根据数据库更新指令清除所述第一WEB终端上的应用程序的缓存中、与所述数据库更新指令的数据标识对应的缓存数据,并发送清除缓存事件至服务器;所述清除缓存事件包括所述数据标识;
所述服务器将接收的所述清除缓存事件,广播至第二WEB终端;
所述第二WEB终端根据接收的所述清除缓存事件,清除所述第二WEB终端上的应用程序的缓存中、与所述数据标识对应的缓存数据。
2.根据权利要求1所述的分布式缓存同步方法,其特征在于,缓存部署于调用所述缓存的应用程序所部署的WEB终端上。
3.根据权利要求1所述的分布式缓存同步方法,其特征在于,所述服务器将接收的所述清除缓存事件,广播至第二WEB终端的步骤之前,还包括:
所述第二WEB终端发送订阅信息至所述服务器;所述订阅信息包括订阅类型,所述订阅类型为与所述第二WEB终端的应用程序相关的清除缓存事件的信息。
4.根据权利要求3所述的分布式缓存同步方法,其特征在于,所述第二WEB终端获取所述服务器的地址信息,并根据所述地址信息发送订阅信息至所述服务器。
5.根据权利要求1所述的分布式缓存同步方法,其特征在于,所述第二WEB终端根据接收的所述清除缓存事件,清除所述第二WEB终端上的应用程序的缓存中、与所述数据库更新指令的数据标识对应的缓存数据的步骤之后,还包括:
所述第一WEB终端发送所述数据库更新指令至数据库终端;
所述数据库终端对数据库执行所述数据库更新指令。
6.一种分布式缓存同步系统,其特征在于,包括:
第一WEB终端,用于根据数据库更新指令清除所述第一WEB终端上的应用程序的缓存中、与所述数据库更新指令的数据标识对应的缓存数据,并发送清除缓存事件至服务器;所述清除缓存事件包括所述数据标识;
所述服务器,用于将接收的所述清除缓存事件,广播至第二WEB终端;
所述第二WEB终端,用于根据接收的所述清除缓存事件,清除所述第二WEB终端上的应用程序的缓存中、与所述数据标识对应的缓存数据。
7.一种分布式缓存同步装置,其特征在于,包括:
事件发送广播模块,用于根据数据库更新指令清除自身WEB终端的应用程序的缓存中、与所述数据库更新指令的数据标识对应的缓存数据,并发送清除缓存事件至服务器,由所述服务器将WEB终端发送的清除缓存事件,广播至同步WEB终端;WEB终端发送的清除缓存事件包括所述数据标识;
事件接收执行模块,用于接收由同步WEB终端发送、经服务器广播的清除缓存事件,并根据接收到的清除缓存事件,清除自身WEB终端的应用程序的缓存中、与接收到的清除缓存事件中的数据标识对应的缓存数据。
8.根据权利要求7所述的分布式缓存同步装置,其特征在于,还包括:
订阅信息发送模块,用于发送订阅信息至所述服务器;所述订阅信息包括订阅类型,所述订阅类型为与自身WEB终端的应用程序相关的清除缓存事件的信息。
9.一种分布式缓存同步方法,其特征在于,包括:
接收第一WEB终端根据数据库更新指令清除所述第一WEB终端上的应用程序的缓存中、与所述数据库更新指令的数据标识对应的缓存数据之后,发送的清除缓存事件;所述清除缓存事件包括所述数据标识;
将接收的所述清除缓存事件广播至第二WEB终端,由第二WEB终端根据接收的所述清除缓存事件,清除所述第二WEB终端上的应用程序的缓存中、与所述数据标识对应的缓存数据。
10.一种分布式缓存同步装置,其特征在于,包括:
事件接收模块,用于接收第一WEB终端根据数据库更新指令清除所述第一WEB终端上的应用程序的缓存中、与所述数据库更新指令的数据标识对应的缓存数据之后,发送的清除缓存事件;所述清除缓存事件包括所述数据标识;
事件转发模块,用于将接收的所述清除缓存事件广播至第二WEB终端,由第二WEB终端根据接收的所述清除缓存事件,清除所述第二WEB终端上的应用程序的缓存中、与所述数据标识对应的缓存数据。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610793659.6A CN106230978A (zh) | 2016-08-31 | 2016-08-31 | 分布式缓存同步方法、装置及系统 |
PCT/CN2016/100564 WO2018040168A1 (zh) | 2016-08-31 | 2016-09-28 | 分布式缓存同步方法、装置及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610793659.6A CN106230978A (zh) | 2016-08-31 | 2016-08-31 | 分布式缓存同步方法、装置及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN106230978A true CN106230978A (zh) | 2016-12-14 |
Family
ID=58073880
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610793659.6A Pending CN106230978A (zh) | 2016-08-31 | 2016-08-31 | 分布式缓存同步方法、装置及系统 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN106230978A (zh) |
WO (1) | WO2018040168A1 (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109408224A (zh) * | 2018-09-17 | 2019-03-01 | 华为技术有限公司 | 数据同步方法、分布式系统与应用节点 |
CN109582732A (zh) * | 2018-10-25 | 2019-04-05 | 东软集团股份有限公司 | 应用间缓存同步的方法、装置、存储介质及电子设备 |
CN109710427A (zh) * | 2018-12-26 | 2019-05-03 | 苏州沁游网络科技有限公司 | 一种信息处理方法、系统及服务器 |
CN113542340A (zh) * | 2021-01-07 | 2021-10-22 | 腾讯科技(深圳)有限公司 | 多终端配置方法、终端和计算机可读存储介质 |
CN116401317A (zh) * | 2023-04-19 | 2023-07-07 | 中国环球租赁有限公司 | 一种缓存数据同步方法、装置、电子设备及介质 |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109582730B (zh) * | 2018-10-11 | 2023-04-25 | 创新先进技术有限公司 | 缓存同步方法、装置、电子设备及计算机可读存储介质 |
CN115794782A (zh) * | 2021-09-09 | 2023-03-14 | 青岛海尔洗衣机有限公司 | 数据处理方法、装置、服务器及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103338243A (zh) * | 2013-06-20 | 2013-10-02 | 新浪网技术(中国)有限公司 | Web节点的缓存数据更新方法和系统 |
CN103747091A (zh) * | 2014-01-16 | 2014-04-23 | 电信科学技术第一研究所 | 一种嵌入式设备的分布式数据同步系统及方法 |
CN103929488A (zh) * | 2014-04-25 | 2014-07-16 | 西安理邦科学仪器有限公司 | 分布式中央监护系统数据同步的方法及装置 |
US9332160B1 (en) * | 2015-09-09 | 2016-05-03 | Samuel Chenillo | Method of synchronizing audio-visual assets |
-
2016
- 2016-08-31 CN CN201610793659.6A patent/CN106230978A/zh active Pending
- 2016-09-28 WO PCT/CN2016/100564 patent/WO2018040168A1/zh active Application Filing
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103338243A (zh) * | 2013-06-20 | 2013-10-02 | 新浪网技术(中国)有限公司 | Web节点的缓存数据更新方法和系统 |
CN103747091A (zh) * | 2014-01-16 | 2014-04-23 | 电信科学技术第一研究所 | 一种嵌入式设备的分布式数据同步系统及方法 |
CN103929488A (zh) * | 2014-04-25 | 2014-07-16 | 西安理邦科学仪器有限公司 | 分布式中央监护系统数据同步的方法及装置 |
US9332160B1 (en) * | 2015-09-09 | 2016-05-03 | Samuel Chenillo | Method of synchronizing audio-visual assets |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109408224A (zh) * | 2018-09-17 | 2019-03-01 | 华为技术有限公司 | 数据同步方法、分布式系统与应用节点 |
CN109582732A (zh) * | 2018-10-25 | 2019-04-05 | 东软集团股份有限公司 | 应用间缓存同步的方法、装置、存储介质及电子设备 |
CN109710427A (zh) * | 2018-12-26 | 2019-05-03 | 苏州沁游网络科技有限公司 | 一种信息处理方法、系统及服务器 |
CN113542340A (zh) * | 2021-01-07 | 2021-10-22 | 腾讯科技(深圳)有限公司 | 多终端配置方法、终端和计算机可读存储介质 |
CN116401317A (zh) * | 2023-04-19 | 2023-07-07 | 中国环球租赁有限公司 | 一种缓存数据同步方法、装置、电子设备及介质 |
CN116401317B (zh) * | 2023-04-19 | 2023-11-17 | 中国环球租赁有限公司 | 一种缓存数据同步方法、装置、电子设备及介质 |
Also Published As
Publication number | Publication date |
---|---|
WO2018040168A1 (zh) | 2018-03-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106230978A (zh) | 分布式缓存同步方法、装置及系统 | |
CN103188574B (zh) | 传输网络视频的方法及系统 | |
CN110417842A (zh) | 用于网关服务器的故障处理方法和装置 | |
US6868453B1 (en) | Internet home page data acquisition method | |
CN110096660A (zh) | 用于加载页面图片的方法、装置和电子设备 | |
CN105791344A (zh) | 灰度发布业务处理的方法、系统、负载均衡器及服务总线装置 | |
CN103731487A (zh) | 一种资源文件的下载方法、装置、系统及路由器 | |
WO2018064939A1 (zh) | 音视频通讯连接容灾方法、装置及系统 | |
CN104580522A (zh) | 客户端与服务器端之间数据同步的方法及系统 | |
CN106791889A (zh) | 一种视频处理方法及系统、分布式对象存储系统 | |
CN111478781B (zh) | 一种消息广播的方法和装置 | |
CN107438084A (zh) | 多客户端数据同步方法和装置 | |
CN108881395A (zh) | 消息推送方法、设备、消息管理器及计算机可读存储介质 | |
CN107070988A (zh) | 报文处理方法及装置 | |
CN106066877A (zh) | 一种异步更新数据的方法及系统 | |
CN103312489A (zh) | 一种终端与服务器进行同步的方法和装置 | |
CN110019539A (zh) | 一种数据仓库的数据同步的方法和装置 | |
CN110798495B (zh) | 用于在集群架构模式下端到端的消息推送的方法和服务器 | |
CN107682281A (zh) | 一种sdn交换机和sdn交换机的应用管理方法 | |
CN108134811A (zh) | 目标文件分发或下载的方法、装置和系统 | |
CN112187887A (zh) | 用于多页面的网页实时通信方法、装置、电子设备 | |
CN101257501B (zh) | 数据导入方法、系统及Web服务器 | |
CN112995005A (zh) | 虚拟网络数据交换方法和装置 | |
CN107968798A (zh) | 一种网管资源标签获取方法、缓存同步方法、装置及系统 | |
US10528625B2 (en) | Client cloud synchronizer |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20161214 |