工业互联网标识解析缓存方法、公共递归节点及设备与流程
未命名
10-18
阅读:215
评论:0

1.本发明涉及网络技术领域,尤其涉及一种工业互联网标识解析缓存方法、一种公共递归节点、一种计算机设备以及一种计算机可读存储介质。
背景技术:
2.工业互联网标识解析体系是工业互联网网络体系的重要组成部分,是支撑工业互联网互联互通的神经枢纽,其作用类似于互联网领域的域名解析系统(dns,domain name system)。
3.在标识解析体系中,公共递归节点实现了公共查询和访问入口,是标识解析体系的关键性入口,通过缓存等技术手段提升服务性能。当收到客户端的标识解析请求时,递归节点会首先查看本地缓存是否有查询结果,如果没有,则会通过标识解析服务器返回的应答路径查询,直至最终查询到标识所关联的地址或者信息,将其返回给客户端,并将请求结果进行缓存。然而,在实际应用场景中,由于地区性质、用户分布的不同,各递归节点的应用负载存在差异性,比如某些地区存在大量的工业企业,自然对标识解析有更大的业务需求,因此导致某些递归节点存在负载过重、缓存效率低的问题。
技术实现要素:
4.为了至少部分解决现有技术中因各递归节点的应用负载存在差异性而导致某些递归节点负载过重、缓存效率低的技术问题而完成了本发明。
5.根据本发明的一方面,提供一种工业互联网标识解析缓存方法,应用于公共递归节点,所述方法包括:
6.响应于第一标识数据到来,判断内存数据库是否具备空闲空间;
7.若是,则将第一标识数据分别存入内存数据库和磁盘数据库;
8.若否,则直接将第一标识数据存入磁盘数据库;
9.响应于第一标识数据已存入磁盘数据库,记录第一标识数据存入磁盘数据库的到来时间,以及设置第一标识数据的命中次数为预设初始值;
10.响应于标识数据查询请求并且在磁盘数据库中查询到所请求的第二标识数据,更新第二标识数据的到来时间为当前时间,以及将第二标识数据的命中次数加一;
11.根据磁盘数据库中所有标识数据的到来时间和命中次数设定排序因子,并基于所述排序因子对所有标识数据进行排序;
12.根据排序结果和内存数据库当前空闲空间的大小从磁盘数据库中选取相应数量的标识数据;以及,
13.将从磁盘数据库中选取的标识数据写入内存数据库。
14.可选地,在将第一标识数据存入内存数据库后,还包括:
15.记录第一标识数据存入内存数据库的到来时间;以及,
16.响应于标识数据查询请求并且在内存数据库中查询到所请求的第二标识数据,更
新第二标识数据的到来时间为当前时间;
17.在根据磁盘数据库中所有标识数据的到来时间和命中次数设定排序因子,并基于所述排序因子对所有标识数据进行排序之前,还包括:
18.设置内存数据库中存储每个标识数据的第一存储有效期;
19.每隔预设周期对内存数据库中的所有标识数据进行有效期校验,将内存数据库中当前时间与到来时间之差超过第一存储有效期的标识数据删除;以及,
20.判断内存数据库中是否释放出空间,若是,则根据磁盘数据库中所有标识数据的到来时间和命中次数设定排序因子,并基于所述排序因子对所有标识数据进行排序。
21.可选地,所述根据排序结果和内存数据库当前空闲空间的大小从磁盘数据库中选取相应数量的标识数据,具体为:
22.根据排序结果和内存数据库完成有效期校验后释放出的空间大小,从磁盘数据库中选取数据量不超过内存数据库所释放空间大小的标识数据。
23.可选地,所述方法还包括:
24.响应于标识数据查询请求,先在内存数据库中查询所述标识数据查询请求所请求的第二标识数据;
25.响应于在内存数据库中查询到所请求的第二标识数据,直接返回第二标识数据;
26.响应于在内存数据库中未查询到所请求的第二标识数据,再在磁盘数据库中继续查询所请求的第二标识数据;
27.响应于在磁盘数据库中查询到所请求的第二标识数据,返回第二标识数据。
28.可选地,所述排序因子采用下述公式计算得出:
29.f=a*timein+b*hit
30.其中,f为排序因子;timein为标识数据的到来时间,若标识数据未被查询过,则timein为标识数据存入磁盘数据库的到来时间,若标识数据已被查询过,则timein为标识数据最近一次被查询时更新后的到来时间;hit为标识数据的命中次数,若标识数据未被查询过,则hit为预设初始值,若标识数据已被查询过,则hit为最近一次被查询时更新后的命中次数。
31.可选地,所述方法还包括:
32.设置磁盘数据库中存储每个标识数据的第二存储有效期;
33.判断磁盘数据库的剩余空间大小是否低于预设值;
34.若是,则将磁盘数据库中当前时间与到来时间之差超过第二存储有效期的标识数据删除。
35.根据本发明的另一方面,提供一种公共递归节点,包括:
36.判断模块,其设置为在第一标识数据到来时,判断内存数据库是否具备空闲空间;
37.控制模块,其设置为在所述判断模块的判断结果为内存数据库具备空闲空间时,将第一标识数据分别存入内存数据库和磁盘数据库;在所述判断模块的判断结果为内存数据库不具备空闲空间时,直接将第一标识数据存入磁盘数据库;
38.记录模块,其设置为在第一标识数据已存入磁盘数据库时,记录第一标识数据存入磁盘数据库的到来时间,以及设置第一标识数据的命中次数为预设初始值;
39.所述记录模块还设置为,响应于标识数据查询请求并且在磁盘数据库中查询到所
请求的第二标识数据,更新第二标识数据的到来时间为当前时间,以及将第二标识数据的命中次数加一;
40.排序模块,其设置为根据磁盘数据库中所有标识数据的到来时间和命中次数设定排序因子,并基于所述排序因子对所有标识数据进行排序;以及,
41.选择模块,其设置为根据排序结果和内存数据库当前空闲空间的大小从磁盘数据库中选取相应数量的标识数据;
42.所述控制模块还设置为,将从磁盘数据库中选取的标识数据写入内存数据库。
43.可选地,所述记录模块还设置为,记录第一标识数据存入内存数据库的到来时间;以及,响应于标识数据查询请求并且在内存数据库中查询到所请求的第二标识数据后,更新第二标识数据的到来时间为当前时间;
44.所述公共递归节点还包括:
45.校验模块,其设置为设置内存数据库中存储每个标识数据的第一存储有效期;以及,每隔预设周期对内存数据库中的所有标识数据进行有效期校验,将内存数据库中当前时间与到来时间之差超过第一存储有效期的标识数据删除;
46.所述判断模块还设置为,判断内存数据库中是否释放出空间;
47.所述排序模块还设置为,在所述判断模块判断为内存数据库中释放出空间时,根据磁盘数据库中所有标识数据的到来时间和命中次数设定排序因子,并基于所述排序因子对所有标识数据进行排序。
48.根据本发明的又一方面,提供一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机程序,当所述处理器运行所述存储器存储的计算机程序时,所述处理器执行前述工业互联网标识解析缓存方法。
49.根据本发明的再一方面,提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时,所述处理器执行前述工业互联网标识解析缓存方法。
50.本发明提供的技术方案可以包括以下有益效果:
51.本发明提供的工业互联网标识解析缓存方法,当公共递归节点接收到第一标识数据时,如果内存数据库具备空闲空间,则将第一标识数据同时存入内存数据库和磁盘数据库,以保证数据存储可靠性的同时提高查询速度;如果内存数据库不具备空闲空间,则仅将第一标识数据存入磁盘数据库,至少保证数据存储可靠性,然后记录第一标识数据存入磁盘数据库的到来时间,以及设置第一标识数据的命中次数为预设初始值,响应于标识数据查询请求并且在磁盘数据库中查询到所请求的第二标识数据,更新第二标识数据的到来时间为当前时间,以及将第二标识数据的命中次数加一,根据磁盘数据库中所有标识数据的到来时间和命中次数设定排序因子,并基于所述排序因子对所有标识数据进行排序,根据排序结果和内存数据库当前空闲空间的大小从磁盘数据库中选取相应数量的标识数据,以及将从磁盘数据库中选取的标识数据写入内存数据库,从而通过这种新的缓存技术机制有效解决现有技术中因各递归节点的应用负载存在差异性而导致某些递归节点负载过重、缓存效率低的技术问题。
52.本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。
附图说明
53.附图用来提供对本发明技术方案的进一步理解,并且构成说明书的一部分,与本发明的实施例一起用于解释本发明的技术方案,并不构成对本发明技术方案的限制。
54.图1为本发明实施例提供的公共递归节点缓存体系架构的示意图;
55.图2为本发明实施例提供的一种工业互联网标识解析缓存方法的流程示意图;
56.图3为本发明实施例提供的一种公共递归节点的结构示意图;
57.图4为本发明实施例提供的计算机设备的结构示意图。
具体实施方式
58.为使本发明实施例的目的、技术方案和优点更加清楚,以下结合附图对本发明的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本发明,并不用于限制本发明。
59.需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序;并且,在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互任意组合。
60.在后续的描述中,使用用于表示元件的诸如“模块”、“部件”或“单元”的后缀仅为了有利于本发明的说明,其本身没有特定的意义。因此,“模块”、“部件”或“单元”可以混合地使用。
61.图1为本发明实施例提供的公共递归节点缓存体系架构的示意图,如图1所示,公共递归节点的缓存体系架构被划分为内存数据库101和磁盘数据库102两部分,其中内存数据库具有查询速度相对较快、存储量小的特点,磁盘数据库具有查询速度相对较慢但存储量大的特点。图2为本发明实施例提供的一种工业互联网标识解析缓存方法的流程示意图,如图2所示,所述工业互联网标识解析缓存方法应用于公共递归节点,包括如下步骤s201至s208。
62.s201.响应于第一标识数据到来,判断内存数据库是否具备空闲空间,若是,则执行步骤s202;若否,则执行步骤s203。
63.本步骤中,第一标识数据指的是新到来公共递归节点的标识数据,每个新到来公共递归节点的标识数据都可以称为第一标识数据,并非特指某个或者某种类型标识数据。公共递归节点每次接收到新到来的标识数据,都需要判断内存数据库是否具备空闲空间。其中,判断内存数据库是否具备空闲空间的方式可以为,根据实际需求设定第一百分比,只要内存数据库的剩余空间超过第一百分比,就判定内存数据库具备空闲空间,否则,判定内存数据库不具备空闲空间,即内存数据库空间已满。
64.s202.将第一标识数据分别存入内存数据库和磁盘数据库,然后执行步骤s204。
65.本步骤中,对于本次接收到的第一标识数据,如果内存数据库具备空闲空间,则将本次接收到的第一标识数据同时存入内存数据库和磁盘数据库。
66.s203.直接将第一标识数据存入磁盘数据库,然后执行步骤s204。
67.本步骤中,对于本次接收到的第一标识数据,如果内存数据库不具备空闲空间,则仅将本次接收到的第一标识数据存入磁盘数据库。
68.本实施例中,当公共递归节点接收到第一标识数据时,如果内存数据库具备空闲
空间,则将第一标识数据同时存入内存数据库和磁盘数据库,以保证数据存储可靠性的同时提高查询速度;如果内存数据库不具备空闲空间,则仅将第一标识数据存入磁盘数据库,至少保证数据存储可靠性。
69.s204.响应于第一标识数据已存入磁盘数据库,记录第一标识数据存入磁盘数据库的到来时间,以及设置第一标识数据的命中次数为预设初始值。
70.本步骤中,所述预设初始值可以设为1。
71.s205.响应于标识数据查询请求并且在磁盘数据库中查询到所请求的第二标识数据,更新第二标识数据的到来时间为当前时间,以及将第二标识数据的命中次数加一。
72.本步骤中,标识数据查询请求中携带有第二标识数据的标识编码。第二标识数据指的是公共递归节点接收到标识数据查询请求后所查询到的标识数据,任何用户通过公共递归节点查询到的标识数据都可以称为第二标识数据,并非特指某个或者某种类型标识数据。
73.需要说明的是,磁盘数据库中存储的某一标识数据每被查询到一次,就更新该标识数据的到来时间为当前时间,也即磁盘数据库中该标识数据的到来时间为其最近一次被查询时更新后的到来时间。同理,磁盘数据库中的某一标识数据每被查询到一次,就将该标识数据的命中次数加一,也即磁盘数据库中该标识数据的命中次数为其最近一次被查询时更新后的命中次数。
74.s206.根据磁盘数据库中所有标识数据的到来时间和命中次数设定排序因子,并基于所述排序因子对所有标识数据进行排序。
75.本步骤中,对磁盘数据库中所有标识数据进行排序具体为按照更新时间和被查询次数对标识数据进行排序。
76.s207.根据排序结果和内存数据库当前空闲空间的大小从磁盘数据库中选取相应数量的标识数据。
77.本步骤中,将更新时间较近、被查询较多次的标识数据筛选出来,至于筛选出多少标识数据,可根据内存数据库当前空闲空间的大小来确定,具体地,从磁盘数据库中选取的标识数据的数据量=内存数据库当前空闲空间-预留裕量。
78.s208.将从磁盘数据库中选取的标识数据写入内存数据库。
79.当然,从磁盘数据库中选取的标识数据可能在内存数据库中有,也可能没有。如果内存数据库中有该标识数据,则更新该标识数据在内存数据库中的到来时间,而不必重复存储同样的标识数据;如果内存数据库中没有该标识数据,则将该标识数据存入内存数据库,并记录该标识数据存入内存数据库的到来时间。
80.本实施例中,通过新的缓存技术机制将原本仅存储于本地磁盘数据库中的标识数据,按照一定规则将一部分标识数据存入内存数据库,由于新的标识数据以及更新时间较近、被查询较多次的标识数据被再次查询的概率较高,将这部分标识数据存入内存数据库可以显著提高查询速度,还可以减轻内存数据库的存储压力,从而有效解决现有技术中因各递归节点的应用负载存在差异性而导致某些递归节点负载过重、缓存效率低的技术问题。
81.在一种具体实施方式中,在步骤s202之后,还包括如下步骤s209和s210。
82.s209.记录第一标识数据存入内存数据库的到来时间。
83.s210.响应于标识数据查询请求并且在内存数据库中查询到所请求的第二标识数据,更新第二标识数据的到来时间为当前时间。
84.需要说明的是,内存数据库中的某一标识数据每被查询到一次,就更新该标识数据的到来时间为当前时间,也即内存数据库中该标识数据的到来时间为其最近一次被查询时更新后的到来时间。
85.在步骤s206之前,还包括如下步骤s211至s213。
86.s211.设置内存数据库中存储每个标识数据的第一存储有效期。
87.s212.每隔预设周期对内存数据库中的所有标识数据进行有效期校验,将内存数据库中当前时间currenttime与到来时间timein之差超过第一存储有效期tt1的标识数据删除。
88.s213.判断内存数据库中是否释放出空间,若是,则执行步骤s206;若否,则结束当前流程。
89.其中,在进行有效期校验时,内存数据库中标识数据的到来时间指的是:若标识数据未被查询过,则标识数据的到来时间为标识数据存入内存数据库时记录的到来时间,若标识数据已被查询过,则标识数据的到来时间为标识数据最近一次被查询时更新后的到来时间。第一存储有效期tt1的取值可由本领域技术人员根据实际需求进行设定与调整。
90.本实施例中,预先在缓存系统中创建定时器,每隔固定的时间周期(例如1天、5天、10天、15天等,本发明对此不做限制)对内存数据库中的所有标识数据进行有效期校验,当某一标识数据的有效期过期时,即该标识数据的currenttime-timein》tt1,直接将该标识数据在内存数据库中删除。
91.其中,判断内存数据库中是否释放出空间的方式可以为,根据实际需求设定第二百分比,计算内存数据库中所有标识数据的有效期校验前后内存数据库的剩余空间之差,只要所述剩余空间之差超过第二百分比,就判定内存数据库释放出新的空间,否则,判定内存数据库未释放出新的空间。
92.本实施例中,当内存数据库释放出空间时,对磁盘数据库中的所有标识数据进行排序,具体根据磁盘数据库中所有标识数据的到来时间和命中次数设定排序因子,再基于所述排序因子对所有标识数据进行排序,排序完成后按照排序因子从大到小的顺序从磁盘数据库中选取相应数量的标识数据写入内存数据库。
93.在一种具体实施方式中,步骤s207具体为:根据排序结果和内存数据库完成有效期校验后释放出的空间大小,从磁盘数据库中选取数据量不超过内存数据库所释放空间大小的标识数据。
94.本实施例中,从磁盘数据库中选取标识数据的数量与内存数据库释放出的空间大小相关,可以设定为从磁盘数据库中选取标识数据的总量恰好匹配内存数据库释放出的空间大小。
95.在一种具体实施方式中,在步骤s205和s210之前还包括如下步骤a)至d)。
96.a).响应于标识数据查询请求,先在内存数据库中查询所述标识数据查询请求所请求的第二标识数据;
97.b).响应于在内存数据库中查询到所请求的第二标识数据,直接返回第二标识数据;
98.c).响应于在内存数据库中未查询到所请求的第二标识数据,再在磁盘数据库中继续查询所请求的第二标识数据;
99.d).响应于在磁盘数据库中查询到所请求的第二标识数据,返回第二标识数据。
100.本实施例中,当公共递归节点接收到标识数据查询请求(也可称为工业互联网标识解析请求)时,先在内存数据库中查询所请求的标识数据,如果存在则直接返回从内存数据库中查询到的标识数据,如果不存在则去磁盘数据库中继续查询,并返回从磁盘数据库中查询到的标识数据。所查询到的标识数据返回给客户端,客户端指的是用户发起工业互联网标识解析请求的设备。当然,如果在磁盘数据库中也未能查询到所请求的标识数据,则公共递归节点可代替客户端向企业节点、二级节点或顶级节点进行递归查询,获取标识数据或者标识所关联的地址返回给客户端,同时根据内存数据库的空间空闲情况将获取的标识数据存入内存数据库与磁盘数据库,或者仅存入磁盘数据库。
101.在一种具体实施方式中,所述排序因子采用下述公式计算得出:
102.f=a*timein+b*hit
103.其中,f为排序因子;timein为标识数据的到来时间,若标识数据未被查询过,则timein为标识数据存入磁盘数据库的到来时间,若标识数据已被查询过,则timein为标识数据最近一次被查询时更新后的到来时间;hit为标识数据的命中次数,若标识数据未被查询过,则hit为预设初始值,若标识数据已被查询过,则hit为最近一次被查询时更新后的命中次数。
104.本实施例中,a、b均为可调节项,在实际应用中可以根据业务需求进行调整,如果需要命中率更大的标识数据进入内存数据库,可以提高b值、降低a值;如果需要内存数据库更加稳定,减少标识数据进出的频率,可以提高a值、降低b值。
105.在一种具体实施方式中,所述方法还包括如下步骤s214至s216。
106.s214.设置磁盘数据库中存储每个标识数据的第二存储有效期tt2;
107.s215.判断磁盘数据库的剩余空间大小是否低于预设值,若是,则执行步骤s216;若否,则结束当前流程;
108.s216.将磁盘数据库中当前时间currenttime与到来时间timein之差超过第二存储有效期的标识数据删除。
109.其中,第二存储有效期tt2的取值可由本领域技术人员根据实际需求进行设定与调整。预设值的取值范围可以设定为0~10%。
110.在清理磁盘数据库时,磁盘数据库中标识数据的到来时间指的是:若标识数据未被查询过,则标识数据的到来时间为标识数据存入磁盘数据库时记录的到来时间,若标识数据已被查询过,则标识数据的到来时间为标识数据最近一次被查询时更新后的到来时间。
111.本实施例中,当磁盘数据库的剩余空间大小低于预设值时,即磁盘数据库的已使用空间接近满时(达到90%或以上),启动磁盘清理过程,遍历磁盘数据库中的所有标识数据,将其中currenttime-timein》tt2的标识数据删除。如果磁盘数据库在经过清理后仍然空间不足,可以对磁盘数据库进行扩容。
112.需要说明的是,上述步骤的顺序只是为了说明本发明实施例而提出的一个具体实例,本发明对上述步骤的顺序不做限定,本领域技术人员在实际应用中可按需对其进行调
整;而且上述步骤的序号大小也不限制其执行顺序。
113.本发明实施例提供的工业互联网标识解析缓存方法,在第一标识数据到来时,先判断内存数据库是否具备空闲空间,若具备空闲空间,则将第一标识数据分别存入内存数据库和磁盘数据库,若不具备空闲空间,则仅将第一标识数据存入磁盘数据库,在收到标识数据查询请求时,先在内存数据库中查询所请求的第二标识数据,若找到,则直接返回查找到的第二标识数据,若未找到,则继续在磁盘数据库中查询,并返回查找到的第二标识数据,同时定期对内存数据库中的所有标识数据进行有效期校验,在全部标识数据校验完成后如果内存数据库释放出了空间,则对磁盘数据库中的所有标识数据进行排序,并按照排序结果将部分标识数据写入内存数据库,以及在磁盘数据库的已使用空间接近满时启动磁盘清理过程,本发明通过设计一种新的缓存技术机制,可以解决现有技术中因各递归节点的应用负载存在差异性而导致某些递归节点负载过重、缓存效率低的技术问题。
114.图3为本发明实施例提供的一种公共递归节点的结构示意图。如图3所示,所述公共递归节点包括:判断模块301、控制模块302、记录模块303、排序模块304和选择模块305。
115.其中,判断模块301设置为在第一标识数据到来时,判断内存数据库是否具备空闲空间。控制模块302设置为在所述判断模块的判断结果为内存数据库具备空闲空间时,将第一标识数据分别存入内存数据库和磁盘数据库;在所述判断模块的判断结果为内存数据库不具备空闲空间时,直接将第一标识数据存入磁盘数据库。记录模块303设置为在第一标识数据已存入磁盘数据库时,记录第一标识数据存入磁盘数据库的到来时间,以及设置第一标识数据的命中次数为预设初始值;所述记录模块303还设置为,响应于标识数据查询请求并且在磁盘数据库中查询到所请求的第二标识数据,更新第二标识数据的到来时间为当前时间,以及将第二标识数据的命中次数加一。排序模块304设置为根据磁盘数据库中所有标识数据的到来时间和命中次数设定排序因子,并基于所述排序因子对所有标识数据进行排序。选择模块305设置为根据排序结果和内存数据库当前空闲空间的大小从磁盘数据库中选取相应数量的标识数据。所述控制模块302还设置为,将从磁盘数据库中选取的标识数据写入内存数据库。
116.在一种具体实施方式中,所述公共递归节点还包括:校验模块306。
117.所述记录模块303还设置为,记录第一标识数据存入内存数据库的到来时间;以及,响应于标识数据查询请求并且在内存数据库中查询到所请求的第二标识数据后,更新第二标识数据的到来时间为当前时间。校验模块306设置为设置内存数据库中存储每个标识数据的第一存储有效期;以及,每隔预设周期对内存数据库中的所有标识数据进行有效期校验,将内存数据库中当前时间与到来时间之差超过第一存储有效期的标识数据删除。所述判断模块301还设置为,判断内存数据库中是否释放出空间。所述排序模块304还设置为,在所述判断模块判断为内存数据库中释放出空间时,根据磁盘数据库中所有标识数据的到来时间和命中次数设定排序因子,并基于所述排序因子对所有标识数据进行排序。
118.在一种具体实施方式中,选择模块305具体设置为:根据排序结果和内存数据库完成有效期校验后释放出的空间大小,从磁盘数据库中选取数据量不超过内存数据库所释放空间大小的标识数据。
119.在一种具体实施方式中,所述公共递归节点还包括:查询模块307。
120.查询模块307设置为,响应于标识数据查询请求,先在内存数据库中查询所述标识
数据查询请求所请求的第二标识数据;响应于在内存数据库中查询到所请求的第二标识数据,直接返回第二标识数据;响应于在内存数据库中未查询到所请求的第二标识数据,再在磁盘数据库中继续查询所请求的第二标识数据;响应于在磁盘数据库中查询到所请求的第二标识数据,返回第二标识数据。
121.在一种具体实施方式中,所述排序因子采用下述公式计算得出:
122.f=a*timein+b*hit
123.其中,f为排序因子;timein为标识数据的到来时间,若标识数据未被查询过,则timein为标识数据存入磁盘数据库的到来时间,若标识数据已被查询过,则timein为标识数据最近一次被查询时更新后的到来时间;hit为标识数据的命中次数,若标识数据未被查询过,则hit为预设初始值,若标识数据已被查询过,则hit为最近一次被查询时更新后的命中次数。
124.在一种具体实施方式中,所述公共递归节点还包括:删除模块308。
125.删除模块308设置为,设置磁盘数据库中存储每个标识数据的第二存储有效期,并判断磁盘数据库的剩余空间大小是否低于预设值,若低于则将磁盘数据库中当前时间与到来时间之差超过第二存储有效期的标识数据删除。
126.本发明实施例提供的公共递归节点,在第一标识数据到来时,先判断内存数据库是否具备空闲空间,若具备空闲空间,则将第一标识数据分别存入内存数据库和磁盘数据库,若不具备空闲空间,则仅将第一标识数据存入磁盘数据库,在收到标识数据查询请求时,先在内存数据库中查询所请求的第二标识数据,若找到,则直接返回查找到的第二标识数据,若未找到,则继续在磁盘数据库中查询,并返回查找到的第二标识数据,同时定期对内存数据库中的所有标识数据进行有效期校验,在全部标识数据校验完成后如果内存数据库释放出了空间,则对磁盘数据库中的所有标识数据进行排序,并按照排序结果将部分标识数据写入内存数据库,以及在磁盘数据库的已使用空间接近满时启动磁盘清理过程,本发明通过设计一种新的缓存技术机制,可以解决现有技术中因各递归节点的应用负载存在差异性而导致某些递归节点负载过重、缓存效率低的技术问题。
127.基于相同的技术构思,本发明实施例相应还提供一种计算机设备,如图4所示,所述计算机设备包括存储器41和处理器42,所述存储器41中存储有计算机程序,当所述处理器42运行所述存储器41存储的计算机程序时,所述处理器42执行前述工业互联网标识解析缓存方法。
128.基于相同的技术构思,本发明实施例相应还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时,所述处理器执行前述工业互联网标识解析缓存方法。
129.综上所述,本发明实施例提供的工业互联网标识解析缓存方法、装置、计算机设备及存储介质,通过设计一种新的缓存技术机制,可以解决现有技术中因各递归节点的应用负载存在差异性而导致某些递归节点负载过重、缓存效率低的技术问题。
130.本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、系统、装置中的功能模块/单元可以被实施为软件、固件、硬件及其适当的组合。在硬件实施方式中,在以上描述中提及的功能模块/单元之间的划分不一定对应于物理组件的划分;例如,一个物理组件可以具有多个功能,或者一个功能或步骤可以由若干物理组件合作执行。某些物
理组件或所有物理组件可以被实施为由处理器,如中央处理器、数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。这样的软件可以分布在计算机可读介质上,计算机可读介质可以包括计算机存储介质(或非暂时性介质)和通信介质(或暂时性介质)。如本领域普通技术人员公知的,术语计算机存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、程序模块或其他数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质。计算机存储介质包括但不限于ram、rom、eeprom、闪存或其他存储器技术、cd-rom、数字多功能盘(dvd)或其他光盘存储、磁盒、磁带、磁盘存储或其他磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其他的介质。此外,本领域普通技术人员公知的是,通信介质通常包含计算机可读指令、数据结构、程序模块或者诸如载波或其他传输机制之类的调制数据信号中的其他数据,并且可包括任何信息递送介质。
131.最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
技术特征:
1.一种工业互联网标识解析缓存方法,其特征在于,应用于公共递归节点,所述方法包括:响应于第一标识数据到来,判断内存数据库是否具备空闲空间;若是,则将第一标识数据分别存入内存数据库和磁盘数据库;若否,则直接将第一标识数据存入磁盘数据库;响应于第一标识数据已存入磁盘数据库,记录第一标识数据存入磁盘数据库的到来时间,以及设置第一标识数据的命中次数为预设初始值;响应于标识数据查询请求并且在磁盘数据库中查询到所请求的第二标识数据,更新第二标识数据的到来时间为当前时间,以及将第二标识数据的命中次数加一;根据磁盘数据库中所有标识数据的到来时间和命中次数设定排序因子,并基于所述排序因子对所有标识数据进行排序;根据排序结果和内存数据库当前空闲空间的大小从磁盘数据库中选取相应数量的标识数据;以及,将从磁盘数据库中选取的标识数据写入内存数据库。2.根据权利要求1所述的方法,其特征在于,在将第一标识数据存入内存数据库后,还包括:记录第一标识数据存入内存数据库的到来时间;以及,响应于标识数据查询请求并且在内存数据库中查询到所请求的第二标识数据,更新第二标识数据的到来时间为当前时间;在根据磁盘数据库中所有标识数据的到来时间和命中次数设定排序因子,并基于所述排序因子对所有标识数据进行排序之前,还包括:设置内存数据库中存储每个标识数据的第一存储有效期;每隔预设周期对内存数据库中的所有标识数据进行有效期校验,将内存数据库中当前时间与到来时间之差超过第一存储有效期的标识数据删除;以及,判断内存数据库中是否释放出空间,若是,则根据磁盘数据库中所有标识数据的到来时间和命中次数设定排序因子,并基于所述排序因子对所有标识数据进行排序。3.根据权利要求2所述的方法,其特征在于,所述根据排序结果和内存数据库当前空闲空间的大小从磁盘数据库中选取相应数量的标识数据,具体为:根据排序结果和内存数据库完成有效期校验后释放出的空间大小,从磁盘数据库中选取数据量不超过内存数据库所释放空间大小的标识数据。4.根据权利要求1或2所述的方法,其特征在于,还包括:响应于标识数据查询请求,先在内存数据库中查询所述标识数据查询请求所请求的第二标识数据;响应于在内存数据库中查询到所请求的第二标识数据,直接返回第二标识数据;响应于在内存数据库中未查询到所请求的第二标识数据,再在磁盘数据库中继续查询所请求的第二标识数据;响应于在磁盘数据库中查询到所请求的第二标识数据,返回第二标识数据。5.根据权利要求1所述的方法,其特征在于,所述排序因子采用下述公式计算得出:f=a*timein+b*hit
其中,f为排序因子;timein为标识数据的到来时间,若标识数据未被查询过,则timein为标识数据存入磁盘数据库的到来时间,若标识数据已被查询过,则timein为标识数据最近一次被查询时更新后的到来时间;hit为标识数据的命中次数,若标识数据未被查询过,则hit为预设初始值,若标识数据已被查询过,则hit为最近一次被查询时更新后的命中次数。6.根据权利要求1所述的方法,其特征在于,还包括:设置磁盘数据库中存储每个标识数据的第二存储有效期;判断磁盘数据库的剩余空间大小是否低于预设值;若是,则将磁盘数据库中当前时间与到来时间之差超过第二存储有效期的标识数据删除。7.一种公共递归节点,其特征在于,包括:判断模块,其设置为在第一标识数据到来时,判断内存数据库是否具备空闲空间;控制模块,其设置为在所述判断模块的判断结果为内存数据库具备空闲空间时,将第一标识数据分别存入内存数据库和磁盘数据库;在所述判断模块的判断结果为内存数据库不具备空闲空间时,直接将第一标识数据存入磁盘数据库;记录模块,其设置为在第一标识数据已存入磁盘数据库时,记录第一标识数据存入磁盘数据库的到来时间,以及设置第一标识数据的命中次数为预设初始值;所述记录模块还设置为,响应于标识数据查询请求并且在磁盘数据库中查询到所请求的第二标识数据,更新第二标识数据的到来时间为当前时间,以及将第二标识数据的命中次数加一;排序模块,其设置为根据磁盘数据库中所有标识数据的到来时间和命中次数设定排序因子,并基于所述排序因子对所有标识数据进行排序;以及,选择模块,其设置为根据排序结果和内存数据库当前空闲空间的大小从磁盘数据库中选取相应数量的标识数据;所述控制模块还设置为,将从磁盘数据库中选取的标识数据写入内存数据库。8.根据权利要求7所述的公共递归节点,其特征在于,所述记录模块还设置为,记录第一标识数据存入内存数据库的到来时间;以及,响应于标识数据查询请求并且在内存数据库中查询到所请求的第二标识数据后,更新第二标识数据的到来时间为当前时间;所述公共递归节点还包括:校验模块,其设置为设置内存数据库中存储每个标识数据的第一存储有效期;以及,每隔预设周期对内存数据库中的所有标识数据进行有效期校验,将内存数据库中当前时间与到来时间之差超过第一存储有效期的标识数据删除;所述判断模块还设置为,判断内存数据库中是否释放出空间;所述排序模块还设置为,在所述判断模块判断为内存数据库中释放出空间时,根据磁盘数据库中所有标识数据的到来时间和命中次数设定排序因子,并基于所述排序因子对所有标识数据进行排序。9.一种计算机设备,其特征在于,包括存储器和处理器,所述存储器中存储有计算机程序,当所述处理器运行所述存储器存储的计算机程序时,所述处理器执行根据权利要求1至
6中任一项所述的工业互联网标识解析缓存方法。10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时,所述处理器执行根据权利要求1至6中任一项所述的工业互联网标识解析缓存方法。
技术总结
本发明提供一种工业互联网标识解析缓存方法、公共递归节点、设备及介质,涉及网络技术领域,方法包括:响应于第一标识数据到来,判断内存数据库是否具备空闲空间,若是分别存入内存数据库和磁盘数据库,若否直接存入磁盘数据库,记录第一标识数据存入磁盘数据库的到来时间并设置命中次数为预设初始值;响应于标识数据查询请求且在磁盘数据库中查询到所请求的第二标识数据,更新第二标识数据的到来时间为当前时间并将命中次数加一;基于设置的排序因子对所有标识数据进行排序;根据排序结果和内存数据库当前空闲空间的大小从磁盘数据库中选取相应数量的标识数据写入内存数据库。本发明可以解决目前递归节点负载过重、缓存效率低的技术问题。的技术问题。的技术问题。
技术研发人员:韩江雪
受保护的技术使用者:中国联合网络通信集团有限公司
技术研发日:2023.07.10
技术公布日:2023/10/15
版权声明
本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
航空之家 https://www.aerohome.com.cn/
飞机超市 https://mall.aerohome.com.cn/
航空资讯 https://news.aerohome.com.cn/