分布式系统中节点缓存数据的处理方法及装置的制造方法

文档序号:9687628阅读:566来源:国知局
分布式系统中节点缓存数据的处理方法及装置的制造方法
【技术领域】
[0001]本发明涉及互联网技术领域,具体涉及一种分布式系统中节点缓存数据的处理方法及装置。
【背景技术】
[0002]缓存是数据交换的缓冲区,当系统需要读取数据库的某条数据时,会首先从缓存中查找该条数据,如果在缓存中查找到了这条数据,则直接执行,如果在缓存中没有查找到这条数据,则再从数据库中查找。由于借助缓存的操作速度比从数据库中查找要快得多,因此缓存可以帮助系统快速地运行,减少系统的延时。
[0003]然而当节点重启时,若缓存没有经过持久化存储,缓存就会丢失,而缓存的丢失会导致系统在一段时间内运行速度较慢,给用户带来不良的体验感。因此,在现有技术中为了避免缓存丢失,一般是将缓存数据进行持久化存储,然而当缓存数据的数据量较大时,缓存数据的持久化存储不仅将花费大量的时间,还会占用大量的系统磁盘资源。

【发明内容】

[0004]鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的分布式系统中节点缓存数据的处理方法及装置,极大地缩减了对缓存数据进行持久化存储所需的时间,减少了对系统磁盘资源的占用,提高了加载速度。
[0005]根据本发明的一个方面,提供了一种分布式系统中节点缓存数据的处理方法,该方法包括:
[0006]读取节点的至少一条缓存数据,缓存数据具有数据键值对的形式;
[0007]针对每一条缓存数据,提取出对应的数据键,并将数据键进行持久化存储;
[0008]当节点重启时,将数据键加载到节点的缓存中。
[0009]根据本发明的另一方面,提供了一种分布式系统中节点缓存数据的处理装置,该装置包括:
[0010]读取模块,适于读取节点的至少一条缓存数据,缓存数据具有数据键值对的形式;[0011 ]提取模块,适于针对每一条缓存数据,提取出对应的数据键;
[0012]存储模块,适于将提取模块提取出的数据键进行持久化存储;
[0013]第一加载模块,适于当节点重启时,将数据键加载到节点的缓存中。
[0014]根据本发明提供的技术方案,读取节点的至少一条缓存数据,其中,缓存数据具有数据键值对的形式,然后针对每一条缓存数据,提取出对应的数据键,并将数据键进行持久化存储,最后当节点重启时,将数据键加载到节点的缓存中。本发明提供的技术方案仅对缓存数据中的数据键进行了持久化存储,从而极大地缩减了对缓存数据进行持久化存储所需的时间,减少了对系统磁盘资源的占用,另外,根据本发明提供的技术方案,在节点重启时,仅将数据键加载到节点的缓存中,提高了加载速度,优化了分布式系统中节点缓存数据的处理方式。
[0015]上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的【具体实施方式】。
【附图说明】
[0016]通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
[0017]图1示出了根据本发明一个实施例的分布式系统中节点缓存数据的处理方法的流程不意图;
[0018]图2示出了根据本发明另一个实施例的分布式系统中节点缓存数据的处理方法的流程示意图;
[0019]图3示出了根据本发明一个实施例的分布式系统中节点缓存数据的处理装置的功能结构不意图;
[0020]图4示出了根据本发明另一个实施例的分布式系统中节点缓存数据的处理装置的功能结构示意图。
【具体实施方式】
[0021]下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
[0022]图1示出了根据本发明一个实施例的分布式系统中节点缓存数据的处理方法的流程示意图,如图1所示,该方法包括如下步骤:
[0023]步骤S100,读取节点的至少一条缓存数据,缓存数据具有数据键值对的形式。
[0024]在步骤S100中,读取节点的至少一条缓存数据,其中,缓存数据具有数据键值对的形式,即缓存数据具有key-value的形式,其中,key为数据键,value为数据值,并且数据值可为多种形式的数据,通过数据键值对的形式可方便地对缓存数据进行管理。
[0025]步骤S101,针对每一条缓存数据,提取出对应的数据键,并将数据键进行持久化存储。
[0026]在步骤S100读取了节点的至少一条缓存数据之后,执行步骤S101,针对每一条缓存数据,提取出对应的数据键,并将数据键进行持久化存储,也就是说,在步骤S101中,仅提取出缓存数据中对应的数据键,并没有提取出对应的数据值,并且仅将数据键进行持久化存储。由于在大多数情况下,数据键的长度一般比较短,而数据值的长度却比较长,如果将数据键与数据值都进行持久化存储,不仅将花费大量的时间,而且还会占用大量的系统磁盘资源,因此与数据键与数据值都进行持久化存储相比,仅对数据键进行持久化存储极大地缩减了进行持久化存储所需的时间和对系统磁盘资源的占用。
[0027 ]步骤S102,当节点重启时,将数据键加载到节点的缓存中。
[0028]当节点重启时,执行步骤S102,将经持久化存储的数据键加载到节点的缓存中,由于只需将数据键加载到节点的缓存中,无需同时将数据值加载到节点的缓存中,从而提高了加载速度。
[0029]根据本实施例提供的分布式系统中节点缓存数据的处理方法,读取节点的至少一条缓存数据,其中,缓存数据具有数据键值对的形式,然后针对每一条缓存数据,提取出对应的数据键,并将数据键进行持久化存储,最后当节点重启时,将数据键加载到节点的缓存中。本发明提供的技术方案仅对缓存数据中的数据键进行了持久化存储,从而极大地缩减了对缓存数据进行持久化存储所需的时间,减少了对系统磁盘资源的占用,另外,根据本发明提供的技术方案,在节点重启时,仅将数据键加载到节点的缓存中,提高了加载速度,优化了分布式系统中节点缓存数据的处理方式。
[0030]图2示出了根据本发明另一个实施例的分布式系统中节点缓存数据的处理方法的流程示意图,如图2所示,该方法包括如下步骤:
[0031]步骤S200,读取节点的至少一条缓存数据,缓存数据具有数据键值对的形式。
[0032]其中,缓存数据具有数据键值对的形式,通过数据键值对的形式可方便地对缓存数据进行管理。
[0033]步骤S201,针对每一条缓存数据,提取出对应的数据键以及数据键的过期时间戳,并为数据键设置用于标识无数据值的标志位,将数据键与标志位组合为数据键值对。
[0034]由于在步骤S201中仅提取出缓存数据中对应的数据键,并没有提取出对应的数据值,因此,数据键对应的数据值为空,为了便于区分这些数据键,在步骤S201中还为数据键设置用于标识无数据值的标志位,然后将数据键与标志位组合为数据键值对。
[0035]另外,由于可对缓存数据设置过期时间,因此,在步骤S201中还提取了数据键的过期时间戳。
[0036]步骤S202,将数据键值对以及数据键的过期时间戳进行持久化存储。
[0037]在步骤S201执行完成之后,步骤S202将数据键值对以及数据键的过期时间戳进行持久化存储。由于数据键值对是由数据键与标志位组合成的,因此将由数据键与标志位组合成的数据键值对进行持久化存储,与数据键与数据值都进行持久化存储相比,缩减了进行持久化存储所需的时间。另外,为了便于在后续步骤中,根据数据键的过期时间戳,对数据键是否过期进行判断,在步骤S202中还需对数据键的过期时间戳进行持久化存储。
[0038]步骤S203,当节点重启时,将数据键值对加载到节点的缓存中。
[0039 ]当节点重启时,步骤S203将由数据键与标志位组合成的数据键值对加载到节点的缓存中,由于无需将数据值加载到节点的缓存中,从而提高了加载速度。
[0040]步骤S204,当节点重启时,根据数据键的过期时间戳,判断数据键是否已过期;若是,则执行步骤S205;若否,则执行步骤S206。
[0041]当节点重启时,步骤S204根据数据键的过期时间戳,判断数据键是否已过期;若判断出数据键已过期,则执行步骤S205,删除该数据键;若判断出数据键未过期,则执行步骤S206o
[0042]步骤S2
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1