CN109582732A - 应用间缓存同步的方法、装置、存储介质及电子设备 - Google Patents
应用间缓存同步的方法、装置、存储介质及电子设备 Download PDFInfo
- Publication number
- CN109582732A CN109582732A CN201811253058.1A CN201811253058A CN109582732A CN 109582732 A CN109582732 A CN 109582732A CN 201811253058 A CN201811253058 A CN 201811253058A CN 109582732 A CN109582732 A CN 109582732A
- Authority
- CN
- China
- Prior art keywords
- source
- access address
- application
- target application
- service register
- 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
Landscapes
- Memory System Of A Hierarchy Structure (AREA)
Abstract
本公开涉及一种应用间缓存同步的方法、装置、存储介质及电子设备,所述方法应用于运行源应用的主机,所述方法包括:从服务注册中心获取目标应用的访问地址,所述访问地址是所述目标应用注册到所述服务注册中心时发送给所述服务注册中心的;根据所述访问地址将所述源应用本地缓存中的缓存数据作为传递参数调用所述目标应用的接口,以将所述缓存数据传递给所述目标应用进行缓存。通过本公开的技术方案,当目标应用集群扩展时,使得源应用可以通过服务注册中心自动获取目标应用的访问地址,无需人工配置。
Description
技术领域
本公开涉及信息技术领域,具体地,涉及一种应用间缓存同步的方法、装置、存储介质及电子设备。
背景技术
缓存是分布式系统中的重要组件,主要解决高并发、大数据场景下,热点数据访问的性能问题。应用间缓存同步是指源应用中的缓存数据同步到目标应用的缓存中,其应用场景主要是由源应用来驱动数据维护,由目标应用来响应数据变更。
现有技术中的应用间缓存同步的方法,通常需要人工配置目标应用的访问地址,由源应用根据目标应用的访问地址调用目标应用的接口来进行缓存同步。然而,当目标应用集群扩展时,需要人工增加或删除目标应用的访问地址。
发明内容
为了克服现有技术中存在的问题,本公开提供一种应用间缓存同步的方法、装置、存储介质及电子设备。
为了实现上述目的,本公开提供一种应用间缓存同步的方法,所述方法应用于运行源应用的主机,所述方法包括:
从服务注册中心获取目标应用的访问地址,所述访问地址是所述目标应用注册到所述服务注册中心时发送给所述服务注册中心的;
根据所述访问地址将所述源应用本地缓存中的缓存数据作为传递参数调用所述目标应用的接口,以将所述缓存数据传递给所述目标应用进行缓存。
可选地,在所述根据所述访问地址将所述源应用本地缓存中的缓存数据作为传递参数调用所述目标应用的接口之前,所述方法还包括:
在所述源应用接收到数据更新操作时,根据所述数据更新操作同时更新数据库和所述源应用本地缓存中的数据。
可选地,所述在所述源应用接收到数据更新操作时,根据所述数据更新操作同时更新数据库和所述源应用本地缓存中的数据,以及所述根据所述访问地址将所述源应用本地缓存中的缓存数据作为传递参数调用所述目标应用的接口,属于同一数据库事务。
可选地,所述从服务注册中心获取目标应用的访问地址,包括:
在所述源应用启动时,向所述服务注册中心发送访问请求;
接收所述服务注册中心根据所述访问请求返回的所述目标应用的访问地址。
可选地,所述从服务注册中心获取目标应用的访问地址,包括:
与所述服务注册中心建立长连接;
通过所述长连接监听所述服务注册中心中存储的访问地址的变更信息;
根据所述变更信息对所述源应用本地缓存的目标应用的访问地址进行更新,其中,所述源应用本地缓存的访问地址是首次从所述服务注册中心获取到访问地址后进行缓存的。
本公开还提供一种应用间缓存同步的方法,所述方法应用于服务注册中心,所述方法包括:
接收目标应用发送的注册请求,存储所述注册请求中的所述目标应用的访问地址;
将所述访问地址发送给源应用,所述访问地址用于所述源应用将所述源应用本地缓存中的缓存数据作为传递参数调用所述目标应用的接口,以将所述缓存数据传递给所述目标应用进行缓存。
本公开还提供一种应用间缓存同步的装置,所述装置应用于运行源应用的主机,所述装置包括:
获取模块,用于从服务注册中心获取目标应用的访问地址,所述访问地址是所述目标应用注册到所述服务注册中心时发送给所述服务注册中心的;
调用模块,用于根据所述访问地址将所述源应用本地缓存中的缓存数据作为传递参数调用所述目标应用的接口,以将所述缓存数据传递给所述目标应用进行缓存。
可选地,所述装置还包括:
更新模块,用于在所述根据所述访问地址将所述源应用本地缓存中的缓存数据作为传递参数调用所述目标应用的接口之前,在所述源应用接收到数据更新操作时,根据所述数据更新操作同时更新数据库和所述源应用本地缓存中的数据。
可选地,所述在所述源应用接收到数据更新操作时,根据所述数据更新操作同时更新数据库和所述源应用本地缓存中的数据,以及所述根据所述访问地址将所述源应用本地缓存中的缓存数据作为传递参数调用所述目标应用的接口,属于同一数据库事务。
可选地,所述获取模块包括:
发送子模块,用于在所述源应用启动时,向所述服务注册中心发送访问请求;
接收子模块,用于接收所述服务注册中心根据所述访问请求返回的所述目标应用的访问地址。
可选地,所述获取模块包括:
连接子模块,用于与所述服务注册中心建立长连接;
监听子模块,用于通过所述长连接监听所述服务注册中心中存储的访问地址的变更信息;
更新子模块,用于根据所述变更信息对所述源应用本地缓存的目标应用的访问地址进行更新,其中,所述源应用本地缓存的访问地址是首次从所述服务注册中心获取到访问地址后进行缓存的。
本公开还提供一种应用间缓存同步的装置,所述装置应用于服务注册中心,所述装置包括:
接收模块,用于接收目标应用发送的注册请求;
存储模块,用于存储所述注册请求中的所述目标应用的访问地址;
发送模块,用于将所述访问地址发送给源应用,所述访问地址用于所述源应用将所述源应用本地缓存中的缓存数据作为传递参数调用所述目标应用的接口,以将所述缓存数据传递给所述目标应用进行缓存。
本公开还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现本公开所提供的应用间缓存同步的方法的步骤。
本公开还提供一种电子设备,包括:
存储器,其上存储有计算机程序;
处理器,用于执行所述存储器中的所述计算机程序,以实现本公开所提供的应用间缓存同步的方法的步骤。
本公开提供的技术方案可以包括以下有益效果:通过从服务注册中心获取目标应用注册到服务注册中心时发送给服务注册中心的访问地址,并根据访问地址将源应用本地缓存中的缓存数据作为传递参数调用目标应用的接口,以将缓存数据传递给目标应用进行缓存,当目标应用集群扩展时,使得源应用可以通过服务注册中心自动获取目标应用的访问地址,无需人工配置。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
本公开的其他特征和优点将在随后的具体实施方式部分予以详细说明。
附图说明
附图是用来提供对本公开的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本公开,但并不构成对本公开的限制。在附图中:
图1是本公开实施例提供的一种实施场景示意图;
图2是本公开实施例提供的一种应用间缓存同步的方法的流程图,该方法应用于运行源应用的主机;
图3是本公开实施例提供的另一种应用间缓存同步的方法的流程图,该方法应用于服务注册中心;
图4是本公开实施例提供的一种应用间缓存同步的方法的信令交互示意图;
图5是本公开实施例提供的一种应用间缓存同步的装置的框图,该装置应用于运行源应用的主机;
图6是本公开实施例提供的另一种应用间缓存同步的装置的框图,该装置应用于运行源应用的主机;
图7是本公开实施例提供的另一种应用间缓存同步的装置的框图,该装置应用于服务注册中心;
图8是本公开实施例提供的一种电子设备的框图;
图9是本公开实施例提供的另一种电子设备的框图。
具体实施方式
以下结合附图对本公开的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本公开,并不用于限制本公开。
在介绍本公开提供的应用间缓存同步的方法之间,首先对本公开各个实施例所涉及的实施场景进行介绍。
如图1所示,本公开各个实施例所涉及的实施场景包括:源应用110、一个或多个目标应用120以及服务注册中心200。其中,源应用110可以运行在一个主机100上;而对于目标应用120,若存在多个目标应用120,则所有的目标应用120可以运行在同一个主机100上,也可以分别运行在不同的主机100上。每一目标应用120对应一个访问地址,根据该访问地址可以调用该目标应用120的接口,其中,目标应用120的访问地址可以包括运行该目标应用120的主机100的主机名、IP地址以及该目标应用120对应的端口信息。
服务注册中心200分别与运行源应用110的主机100和每一个运行目标应用120的主机100连接。示例地,服务注册中心200可以是配置有zookeeper的电子设备。
基于图1所示的实施场景,下面对本公开实施例提供的应用间缓存同步的方法进行说明。
本公开实施例提供一种应用间缓存同步的方法,该方法应用于运行源应用的主机,如图2所示,该方法包括:
在步骤S21中,从服务注册中心获取目标应用的访问地址,该访问地址是目标应用注册到服务注册中心时发送给服务注册中心的。
在一种可能的实现方式中,在源应用启动时,运行源应用的主机可以向服务注册中心发送访问请求并接收服务注册中心根据该访问请求返回的已注册的目标应用的访问地址。
值得说明的是,在获取到目标应用的访问地址后,可以将目标应用的访问地址存储至源应用本地缓存中,这样,即使服务注册中心停机,也可以从源应用本地缓存中读取目标应用的访问地址,从而保证源应用与目标应用之间的缓存同步正常进行。
在另一种可能的实现方式中,运行源应用的主机还可以与服务注册中心建立长连接,通过该长连接监听服务注册中心中存储的访问地址的变更信息,并根据变更信息对源应用本地缓存的目标应用的访问地址进行更新。
值得说明的是,源应用本地缓存的访问地址可以是首次从服务注册中心获取到访问地址后进行缓存的。也就是说,该实现方式可以是在源应用首次启动时,在向服务注册中心发送访问请求、接收并缓存服务注册中心返回的目标应用的访问地址之后实施的。
示例地,访问地址的变更信息可以包括新注册到服务注册中心的目标应用的访问地址以及从服务注册中心注销的目标应用的访问地址,也就是说,当有新的目标应用注册到服务注册中心或者已注册的目标应用从服务注册中心注销时,服务注册中心可将新注册的目标应用的访问地址进行存储或者将已存储的待注销目标应用的访问地址删除,运行源应用的主机通过长连接可以监听到服务注册中心中存储的访问地址的变更信息,根据该变更信息可以将新注册的目标应用的访问地址存储至源应用本地缓存中或者将已注销的目标应用的访问地址从源应用本地缓存中删除。
在步骤S22中,根据访问地址将源应用本地缓存中的缓存数据作为传递参数调用目标应用的接口,以将缓存数据传递给目标应用进行缓存。
采用上述方法,通过从服务注册中心获取目标应用注册到服务注册中心时发送给服务注册中心的访问地址,并根据访问地址将源应用本地缓存中的缓存数据作为传递参数调用目标应用的接口,以将缓存数据传递给目标应用进行缓存,当目标应用集群扩展时,使得源应用可以通过服务注册中心自动获取目标应用的访问地址,无需人工配置。
在本公开的另一个实施例中,在上述步骤S22之前,上述方法还可以包括:在源应用接收到数据更新操作时,根据该数据更新操作同时更新数据库和源应用本地缓存中的数据。
示例地,数据更新操作可以是对热点数据的操作,在源应用操作热点数据时,可以将该热点数据同时保存至数据库和源应用本地缓存中,这样,可以保证用户访问源应用时能够快速响应。
在本公开的另一个实施例中,上述在源应用接收到数据更新操作时,根据数据更新操作同时更新数据库和源应用本地缓存中的数据,以及上述根据访问地址将源应用本地缓存中的缓存数据作为传递参数调用目标应用的接口,可以属于同一数据库事务。
示例地,在获取到目标应用的访问地址后,可以开启一数据库事务并在该数据库事务中同时执行上述在源应用接收到数据更新操作时,根据数据更新操作同时更新数据库和源应用本地缓存中的数据,以及根据访问地址将源应用本地缓存中的缓存数据作为传递参数调用目标应用的接口的操作,若上述操作均成功执行,则源应用与目标应用之间的缓存同步成功;若上述任一操作出现问题,则进行回滚。这样,可以确保源应用与目标应用之间缓存同步的原子性和一致性。对于诸如源应用本地缓存失效、被击穿等情况,仍能够保证数据库、源应用本地缓存以及目标应用本地缓存中的缓存数据一致,避免出现无法对目标应用本地缓存中的缓存数据进行校验等问题。
本公开实施例还提供了另一种应用间缓存同步的方法,该方法应用于服务注册中心,如图3所示,该方法包括:
在步骤S31中,接收目标应用发送的注册请求,存储该注册请求中的该目标应用的访问地址。
在步骤S32中,将访问地址发送给源应用,该访问地址用于源应用将源应用本地缓存中的缓存数据作为传递参数调用目标应用的接口,以将缓存数据传递给目标应用进行缓存。
采用上述方法,通过服务注册中心接收目标应用的注册请求并将注册请求中的访问地址发送给源应用,使得在目标应用集群扩展时,源应用能够自动获取目标应用的访问地址,无需人工配置。
为了使本领域技术人员更加理解本公开实施例提供的技术方案,下面通过详细的例子对本公开实施例提供的应用间缓存同步的方法进行详细说明。如图4所示,包括:
在步骤S41中,目标应用向服务注册中心发送注册请求。
其中,该注册请求包括目标应用的访问地址,该目标应用的访问地址可以包括运行该目标应用的主机的主机名、IP地址以及端口信息等等。
在步骤S42中,服务注册中心接收目标应用发送的注册请求并存储注册请求中的目标应用的访问地址。
在步骤S43中,源应用在启动时,向服务注册中心发送访问请求。
在步骤S44中,服务注册中心将目标应用的访问地址发送给源应用。
在步骤S45中,源应用在接收到目标应用的访问地址后,将访问地址存储至源应用本地缓存中。
通过该步骤S45,即使服务注册中心停机,也可以从源应用本地缓存中读取目标应用的访问地址,从而保证源应用与目标应用之间的缓存同步正常进行。
在步骤S46中,源应用与服务注册中心建立长连接。
在步骤S47中,源应用通过长连接监听服务注册中心中存储的访问地址的变更信息。
在步骤S48中,源应用根据变更信息对源应用本地缓存的目标应用的访问地址进行更新。
值得说明的是,在上述步骤S46至S48中,源应用本地缓存的访问地址可以是首次从服务注册中心获取到访问地址后进行缓存的。也就是说,上述步骤S46至S48可以是在源应用首次启动时,在向服务注册中心发送访问请求、接收并缓存服务注册中心返回的目标应用的访问地址之后执行的。
示例地,访问地址的变更信息可以包括新注册到服务注册中心的目标应用的访问地址以及从服务注册中心注销的目标应用的访问地址,也就是说,当有新的目标应用注册到服务注册中心或者已注册的目标应用从服务注册中心注销时,服务注册中心可将新注册的目标应用的访问地址进行存储或者将已存储的待注销目标应用的访问地址删除,运行源应用的主机通过长连接可以监听到服务注册中心中存储的访问地址的变更信息,根据变更信息可以将新注册的目标应用的访问地址存储至源应用本地缓存中或者将已注销的目标应用的访问地址从源应用本地缓存中删除。
在步骤S49中,源应用在接收到数据更新操作时,根据数据更新操作同时更新数据库和源应用本地缓存中的数据。
在步骤S50中,源应用根据源应用本地缓存中的目标应用的访问地址将源应用本地缓存中的缓存数据作为传递参数调用目标应用的接口。
其中,上述步骤S49和步骤S50可以属于同一数据库事务。示例地,在获取到目标应用的访问地址后,可以开启一数据库事务并在该数据库事务中同时执行上述步骤S49和步骤S50,若上述步骤S49和步骤S50均成功执行,则源应用与目标应用之间的缓存同步成功;若上述步骤S49和步骤S50中的任一者出现问题,则进行回滚。这样,可以确保源应用与目标应用之间缓存同步的原子性和一致性。对于诸如源应用本地缓存失效、被击穿等情况,仍能够保证数据库、源应用本地缓存以及目标应用本地缓存中的缓存数据一致,避免出现无法对目标应用本地缓存中的缓存数据进行校验等问题。
在步骤S51中,目标应用通过接口获取缓存数据。
在步骤S52中,目标应用将缓存数据存储至目标应用本地缓存中。
对于上述方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本公开并不受所描述的动作顺序的限制。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本公开所必须的。
本公开实施例还提供一种应用间缓存同步的装置,该装置应用于运行源应用的主机,如图5所示,该装置500包括:
获取模块501,用于从服务注册中心获取目标应用的访问地址,所述访问地址是所述目标应用注册到所述服务注册中心时发送给所述服务注册中心的;
调用模块502,用于根据所述访问地址将所述源应用本地缓存中的缓存数据作为传递参数调用所述目标应用的接口,以将所述缓存数据传递给所述目标应用进行缓存。
可选地,如图6所示,所述装置500还包括:
更新模块503,用于在所述根据所述访问地址将所述源应用本地缓存中的缓存数据作为传递参数调用所述目标应用的接口之前,在所述源应用接收到数据更新操作时,根据所述数据更新操作同时更新数据库和所述源应用本地缓存中的数据。
可选地,所述在所述源应用接收到数据更新操作时,根据所述数据更新操作同时更新数据库和所述源应用本地缓存中的数据,以及所述根据所述访问地址将所述源应用本地缓存中的缓存数据作为传递参数调用所述目标应用的接口,属于同一数据库事务。
可选地,如图6所示,所述获取模块501包括:
发送子模块511,用于在所述源应用启动时,向所述服务注册中心发送访问请求;
接收子模块512,用于接收所述服务注册中心根据所述访问请求返回的所述目标应用的访问地址。
可选地,如图6所示,所述获取模块501包括:
连接子模块513,用于与所述服务注册中心建立长连接;
监听子模块514,用于通过所述长连接监听所述服务注册中心中存储的访问地址的变更信息;
更新子模块515,用于根据所述变更信息对所述源应用本地缓存的目标应用的访问地址进行更新,其中,所述源应用本地缓存的访问地址是首次从所述服务注册中心获取到访问地址后进行缓存的。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
另外,本领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。上述描述功能模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
采用上述装置,通过从服务注册中心获取目标应用注册到服务注册中心时发送给服务注册中心的访问地址,并根据访问地址将源应用本地缓存中的缓存数据作为传递参数调用目标应用的接口,以将缓存数据传递给目标应用进行缓存,当目标应用集群扩展时,源应用可以通过服务注册中心自动获取目标应用的访问地址,无需人工配置。
本公开实施例还提供一种应用间缓存同步的装置,该装置应用于服务注册中心,如图7所示,该装置700包括:
接收模块701,用于接收目标应用发送的注册请求;
存储模块702,用于存储所述注册请求中的所述目标应用的访问地址;
发送模块703,用于将所述访问地址发送给源应用,所述访问地址用于所述源应用将所述源应用本地缓存中的缓存数据作为传递参数调用所述目标应用的接口,以将所述缓存数据传递给所述目标应用进行缓存。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
另外,本领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。上述描述功能模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
采用上述装置,通过服务注册中心接收目标应用的注册请求并将注册请求中的访问地址发送给源应用,使得在目标应用集群扩展时,源应用能够自动获取目标应用的访问地址,无需人工配置。
本公开实施例还提供一种电子设备,如图8所示,该电子设备800可以包括:处理器801,存储器802。该电子设备800还可以包括多媒体组件803,输入/输出(I/O)接口804,以及通信组件805中的一者或多者。
其中,处理器801用于控制该电子设备800的整体操作,以完成上述运行源程序的主机执行的应用间缓存同步的方法中的全部或部分步骤。存储器802用于存储各种类型的数据以支持在该电子设备800的操作,这些数据例如可以包括用于在该电子设备800上操作的任何应用程序或方法的指令,以及应用程序相关的数据,例如目标应用的访问地址等等。该存储器802可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,例如静态随机存取存储器(Static Random Access Memory,简称SRAM),电可擦除可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,简称EEPROM),可擦除可编程只读存储器(Erasable Programmable Read-Only Memory,简称EPROM),可编程只读存储器(Programmable Read-Only Memory,简称PROM),只读存储器(Read-Only Memory,简称ROM),磁存储器,快闪存储器,磁盘或光盘。多媒体组件803可以包括屏幕和音频组件。其中屏幕例如可以是触摸屏,音频组件用于输出和/或输入音频信号。例如,音频组件可以包括一个麦克风,麦克风用于接收外部音频信号。所接收的音频信号可以被进一步存储在存储器802或通过通信组件805发送。音频组件还包括至少一个扬声器,用于输出音频信号。I/O接口804为处理器801和其他接口模块之间提供接口,上述其他接口模块可以是键盘,鼠标,按钮等。这些按钮可以是虚拟按钮或者实体按钮。通信组件805用于该电子设备800与其他设备之间进行有线或无线通信。无线通信,例如Wi-Fi,蓝牙,近场通信(Near FieldCommunication,简称NFC),2G、3G或4G,或它们中的一种或几种的组合,因此相应的该通信组件805可以包括:Wi-Fi模块,蓝牙模块,NFC模块。该电子设备800可以通过通信组件805向服务注册中心发送访问请求并接收服务注册中心返回的目标应用的访问地址。此外,该电子设备800还可以通过通信组件805与服务注册中心建立长连接,通过该长连接可以监听服务注册中心中存储的访问地址的变更信息以及根据变更信息对源应用本地缓存的目标应用的访问地址进行更新。
在一示例性实施例中,电子设备800可以被一个或多个应用专用集成电路(Application Specific Integrated Circuit,简称ASIC)、数字信号处理器(DigitalSignal Processor,简称DSP)、数字信号处理设备(Digital Signal Processing Device,简称DSPD)、可编程逻辑器件(Programmable Logic Device,简称PLD)、现场可编程门阵列(Field Programmable Gate Array,简称FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述运行源程序的主机执行的应用间缓存同步的方法。
本公开实施例的电子设备,可以从服务注册中心获取目标应用注册到服务注册中心时发送给服务注册中心的访问地址,并根据访问地址将源应用本地缓存中的缓存数据作为传递参数调用目标应用的接口,以将缓存数据传递给目标应用进行缓存,当目标应用集群扩展时,使得源应用可以通过服务注册中心自动获取目标应用的访问地址,无需人工配置。
在另一示例性实施例中,还提供了一种包括程序指令的计算机可读存储介质,该程序指令被处理器执行时实现上述运行源程序的主机执行的应用间缓存同步的方法的步骤。例如,该计算机可读存储介质可以为上述包括程序指令的存储器802,上述程序指令可由电子设备800的处理器801执行以完成上述运行源程序的主机执行的应用间缓存同步的方法。
本公开实施例还提供一种电子设备,如图9所示,电子设备900包括处理器922,其数量可以为一个或多个,以及存储器932,用于存储可由处理器922执行的计算机程序。存储器932中存储的计算机程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理器922可以被配置为执行该计算机程序,以执行上述服务注册中心执行的应用间缓存同步的方法。
另外,电子设备900还可以包括电源组件926和通信组件950,该电源组件926可以被配置为执行电子设备900的电源管理,该通信组件950可以被配置为实现电子设备900的通信,例如,有线或无线通信。该电子设备900可以通过通信组件950接收目标应用发送的注册请求,存储注册请求中的目标应用的访问地址,以及将访问地址发送给源应用,其中,访问地址用于源应用将源应用本地缓存中的缓存数据作为传递参数调用目标应用的接口,以将缓存数据传递给目标应用进行缓存。
此外,该电子设备900还可以包括输入/输出(I/O)接口958。电子设备900可以操作基于存储在存储器932的操作系统,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM等等。
本公开实施例的电子设备,通过接收目标应用的注册请求并将注册请求中的访问地址发送给源应用,使得在目标应用集群扩展时,源应用能够自动获取目标应用的访问地址,无需人工配置。
在另一示例性实施例中,还提供了一种包括程序指令的计算机可读存储介质,该程序指令被处理器执行时实现上述服务注册中心执行的应用间缓存同步的方法的步骤。例如,该计算机可读存储介质可以为上述包括程序指令的存储器932,上述程序指令可由电子设备900的处理器922执行以完成上述服务注册中心执行的应用间缓存同步的方法。
以上结合附图详细描述了本公开的优选实施方式,但是,本公开并不限于上述实施方式中的具体细节,在本公开的技术构思范围内,可以对本公开的技术方案进行多种简单变型,这些简单变型均属于本公开的保护范围。
另外需要说明的是,在上述具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下,可以通过任何合适的方式进行组合。为了避免不必要的重复,本公开对各种可能的组合方式不再另行说明。
此外,本公开的各种不同的实施方式之间也可以进行任意组合,只要其不违背本公开的思想,其同样应当视为本公开所公开的内容。
Claims (10)
1.一种应用间缓存同步的方法,其特征在于,所述方法应用于运行源应用的主机,所述方法包括:
从服务注册中心获取目标应用的访问地址,所述访问地址是所述目标应用注册到所述服务注册中心时发送给所述服务注册中心的;
根据所述访问地址将所述源应用本地缓存中的缓存数据作为传递参数调用所述目标应用的接口,以将所述缓存数据传递给所述目标应用进行缓存。
2.根据权利要求1所述的方法,其特征在于,在所述根据所述访问地址将所述源应用本地缓存中的缓存数据作为传递参数调用所述目标应用的接口之前,所述方法还包括:
在所述源应用接收到数据更新操作时,根据所述数据更新操作同时更新数据库和所述源应用本地缓存中的数据。
3.根据权利要求1或2所述的方法,其特征在于,所述从服务注册中心获取目标应用的访问地址,包括:
与所述服务注册中心建立长连接;
通过所述长连接监听所述服务注册中心中存储的访问地址的变更信息;
根据所述变更信息对所述源应用本地缓存的目标应用的访问地址进行更新,其中,所述源应用本地缓存的访问地址是首次从所述服务注册中心获取到访问地址后进行缓存的。
4.一种应用间缓存同步的方法,其特征在于,所述方法应用于服务注册中心,所述方法包括:
接收目标应用发送的注册请求,存储所述注册请求中的所述目标应用的访问地址;
将所述访问地址发送给源应用,所述访问地址用于所述源应用将所述源应用本地缓存中的缓存数据作为传递参数调用所述目标应用的接口,以将所述缓存数据传递给所述目标应用进行缓存。
5.一种应用间缓存同步的装置,其特征在于,所述装置应用于运行源应用的主机,所述装置包括:
获取模块,用于从服务注册中心获取目标应用的访问地址,所述访问地址是所述目标应用注册到所述服务注册中心时发送给所述服务注册中心的;
调用模块,用于根据所述访问地址将所述源应用本地缓存中的缓存数据作为传递参数调用所述目标应用的接口,以将所述缓存数据传递给所述目标应用进行缓存。
6.根据权利要求5所述的装置,其特征在于,所述装置还包括:
更新模块,用于在所述根据所述访问地址将所述源应用本地缓存中的缓存数据作为传递参数调用所述目标应用的接口之前,在所述源应用接收到数据更新操作时,根据所述数据更新操作同时更新数据库和所述源应用本地缓存中的数据。
7.根据权利要求5或6所述的装置,其特征在于,所述获取模块包括:
连接子模块,用于与所述服务注册中心建立长连接;
监听子模块,用于通过所述长连接监听所述服务注册中心中存储的访问地址的变更信息;
更新子模块,用于根据所述变更信息对所述源应用本地缓存的目标应用的访问地址进行更新,其中,所述源应用本地缓存的访问地址是首次从所述服务注册中心获取到访问地址后进行缓存的。
8.一种应用间缓存同步的装置,其特征在于,所述装置应用于服务注册中心,所述装置包括:
接收模块,用于接收目标应用发送的注册请求;
存储模块,用于存储所述注册请求中的所述目标应用的访问地址;
发送模块,用于将所述访问地址发送给源应用,所述访问地址用于所述源应用将所述源应用本地缓存中的缓存数据作为传递参数调用所述目标应用的接口,以将所述缓存数据传递给所述目标应用进行缓存。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现权利要求1至4中任一项所述方法的步骤。
10.一种电子设备,其特征在于,包括:
存储器,其上存储有计算机程序;
处理器,用于执行所述存储器中的所述计算机程序,以实现权利要求1至4中任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811253058.1A CN109582732A (zh) | 2018-10-25 | 2018-10-25 | 应用间缓存同步的方法、装置、存储介质及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811253058.1A CN109582732A (zh) | 2018-10-25 | 2018-10-25 | 应用间缓存同步的方法、装置、存储介质及电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109582732A true CN109582732A (zh) | 2019-04-05 |
Family
ID=65920638
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811253058.1A Pending CN109582732A (zh) | 2018-10-25 | 2018-10-25 | 应用间缓存同步的方法、装置、存储介质及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109582732A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113315709A (zh) * | 2021-03-22 | 2021-08-27 | 阿里巴巴新加坡控股有限公司 | 地址缓存的创建方法、路由选址方法和装置 |
CN115277386A (zh) * | 2022-06-30 | 2022-11-01 | 中盈优创资讯科技有限公司 | 一种基于apisix的注册中心管理方法 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102571550A (zh) * | 2010-12-30 | 2012-07-11 | 北京亿阳信通软件研究院有限公司 | 一种通用的信息交互平台和方法 |
CN103581247A (zh) * | 2012-07-30 | 2014-02-12 | 杭州洱海科技有限公司 | 一种基于云计算环境的分布式Web测试方法 |
CN104158886A (zh) * | 2014-08-21 | 2014-11-19 | 中南大学 | 一种应用程序的流式执行方法 |
US20160224470A1 (en) * | 2015-01-29 | 2016-08-04 | Kabushiki Kaisha Toshiba | Synchronization variable monitoring device, processor, and semiconductor apparatus |
CN105868636A (zh) * | 2015-01-20 | 2016-08-17 | 阿里巴巴集团控股有限公司 | 一种检测权限漏洞的方法及装置 |
CN105959385A (zh) * | 2016-06-06 | 2016-09-21 | 浪潮软件集团有限公司 | 一种信息通信方法、装置及系统 |
CN106230978A (zh) * | 2016-08-31 | 2016-12-14 | 广州市乐商软件科技有限公司 | 分布式缓存同步方法、装置及系统 |
-
2018
- 2018-10-25 CN CN201811253058.1A patent/CN109582732A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102571550A (zh) * | 2010-12-30 | 2012-07-11 | 北京亿阳信通软件研究院有限公司 | 一种通用的信息交互平台和方法 |
CN103581247A (zh) * | 2012-07-30 | 2014-02-12 | 杭州洱海科技有限公司 | 一种基于云计算环境的分布式Web测试方法 |
CN104158886A (zh) * | 2014-08-21 | 2014-11-19 | 中南大学 | 一种应用程序的流式执行方法 |
CN105868636A (zh) * | 2015-01-20 | 2016-08-17 | 阿里巴巴集团控股有限公司 | 一种检测权限漏洞的方法及装置 |
US20160224470A1 (en) * | 2015-01-29 | 2016-08-04 | Kabushiki Kaisha Toshiba | Synchronization variable monitoring device, processor, and semiconductor apparatus |
CN105959385A (zh) * | 2016-06-06 | 2016-09-21 | 浪潮软件集团有限公司 | 一种信息通信方法、装置及系统 |
CN106230978A (zh) * | 2016-08-31 | 2016-12-14 | 广州市乐商软件科技有限公司 | 分布式缓存同步方法、装置及系统 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113315709A (zh) * | 2021-03-22 | 2021-08-27 | 阿里巴巴新加坡控股有限公司 | 地址缓存的创建方法、路由选址方法和装置 |
CN113315709B (zh) * | 2021-03-22 | 2023-02-28 | 阿里巴巴新加坡控股有限公司 | 地址缓存的创建方法、路由选址方法和装置 |
CN115277386A (zh) * | 2022-06-30 | 2022-11-01 | 中盈优创资讯科技有限公司 | 一种基于apisix的注册中心管理方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108510389B (zh) | 基于区块链的智能合约调用方法、设备及可读存储介质 | |
US10880711B1 (en) | Electronic subscriber identity module (eSIM) management platform | |
CN114375069B (zh) | 一种通信方法和网络设备 | |
CN106844784A (zh) | 数据缓存方法、装置及计算机可读存储介质 | |
CN107979508A (zh) | 微服务测试方法及装置 | |
CN110334297A (zh) | 终端页面的加载方法、终端、服务器及存储介质 | |
CN101115214B (zh) | 智能呼叫路由的方法、设备及系统 | |
CN105453058B (zh) | 目录服务发现和/或学习 | |
CN107547744A (zh) | 资源配置方法及相关产品 | |
CN110601981A (zh) | 服务路由方法、服务提供方云域及服务调用方云域 | |
CN110380919A (zh) | 区块链请求的处理方法、装置、电子设备及可读存储介质 | |
CN113973129B (zh) | 一种支持多种注册中心微服务的网关 | |
CN108156095B (zh) | 资源确定方法及装置、nfvo | |
CN109582732A (zh) | 应用间缓存同步的方法、装置、存储介质及电子设备 | |
JP2018512001A (ja) | 仮想化ネットワーク機能を管理するための方法及び装置 | |
CN110049503A (zh) | 一种获取数据的方法和设备 | |
CN108605373A (zh) | 用于提供网络共享服务的方法和电子装置 | |
CN111144837A (zh) | 流程编排的方法、装置、存储介质及电子设备 | |
CN110011877A (zh) | 一种交换机测试方法和装置 | |
CN111339194B (zh) | 数据库接入层中间件的自动调度方法和装置 | |
CN108259523A (zh) | 一种数据传输方法及物联网系统、网络访问方法 | |
CN109885612A (zh) | 区块链智能合约的同步生效方法及装置 | |
CN111158987B (zh) | 微服务架构的健康检查方法及装置 | |
CN108804711A (zh) | 一种数据处理的方法、装置和计算机可读存储介质 | |
CN108966315A (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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190405 |