本发明专利技术适用于数据处理技术领域,提供了数据缓存方法及服务器。该方法包括:将各个变量数据存入有序序列中,每个变量数据对应设置有一个权重;监测各个变量数据是否执行操作,并在监测到变量数据执行操作时,将执行操作的变量数据的权重进行调整;根据调整后的各个变量数据的权重,将权重满足预设条件的变量数据通过表头插入方式插入单向链表中;其中,所述单向链表具有预设长度。所述数据缓存方法及服务器,通过从单向链表中直接调用变量数据能够减少搜索,节省程序运行的消耗,能在内存中保持一定数量的js变量供开发者使用而不必频繁的访问原型链来获取变量,从而能够极大地提高变量获取的性能。
Data cache method and server
【技术实现步骤摘要】
数据缓存方法及服务器
本专利技术属于数据处理
,尤其涉及数据缓存方法及服务器。
技术介绍
前端技术近几年发展迅猛,前端代码的性能越来越受到关注,而javascript在前端技术中有着举足轻重的作用,随着用户和企业对系统的体验愈发重视,页面特效逐步升级,dom的操作愈发频繁,基于js原型链的搜索极其消耗程序运行的性能。
技术实现思路
有鉴于此,本专利技术实施例提供了数据缓存方法及服务器,以解决现有技术中基于js原型链的对变量数据的搜索影响程序运行性能的问题。本专利技术实施例的第一方面提供了一种数据缓存方法,包括:将各个变量数据存入有序序列中,每个变量数据对应设置有一个重要程度标识信息;监测各个变量数据是否执行操作,并在监测到变量数据执行操作时,将执行操作的变量数据的重要程度标识信息进行调整;根据调整后的各个变量数据的重要程度标识信息,将重要程度标识信息满足预设条件的变量数据通过表头插入方式插入单向链表中;其中,所述单向链表具有预设长度。可选的,所述将各个变量数据存入有序序列中包括:若目标变量数据的类型为Object,则获取所述目标变量数据的地址,根据所述地址计算所述目标变量数据的哈希码,所述目标变量数据为各个变量数据中的任意一个变量数据;若所述目标变量数据的类型为String,则获取所述目标变量数据中包含的字符串,根据所述字符串计算所述目标变量数据的哈希码;若所述目标变量数据的类型为Integer,则获取所述目标变量数据中包含的数字,根据所述数字计算所述目标变量数据的哈希码;在计算得到各个变量数据的哈希码后,根据计算得到的哈希码将对应的变量数据存入有序序列中。可选的,所述重要程度标识信息包括权重;所述在监测到变量数据执行操作时,将执行操作的变量数据的权重进行调整包括:在监测到变量数据执行操作时,将执行操作的变量数据的权重增大预设值。可选的,所述重要程度标识信息包括权重;所述在监测到变量数据执行操作时,将执行操作的变量数据的权重进行调整包括:在监测到变量数据执行操作时,根据所述操作将执行操作的变量数据的权重增大预设值。可选的,所述根据调整后的各个变量数据的权重,将权重满足预设条件的变量数据通过表头插入方式插入单向链表中包括:每隔预设时间获取一次各个变量数据中权重最大的变量数据;将权重最大的变量数据通过表头插入方式插入所述单向链表中。本专利技术实施例的第二方面提供了一种服务器,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如下步骤:将各个变量数据存入有序序列中,每个变量数据对应设置有一个重要程度标识信息;监测各个变量数据是否执行操作,并在监测到变量数据执行操作时,将执行操作的变量数据的重要程度标识信息进行调整;根据调整后的各个变量数据的重要程度标识信息,将重要程度标识信息满足预设条件的变量数据通过表头插入方式插入单向链表中;其中,所述单向链表具有预设长度。可选的,所述将各个变量数据存入有序序列中包括:若目标变量数据的类型为Object,则获取所述目标变量数据的地址,根据所述地址计算所述目标变量数据的哈希码,所述目标变量数据为各个变量数据中的任意一个变量数据;若所述目标变量数据的类型为String,则获取所述目标变量数据中包含的字符串,根据所述字符串计算所述目标变量数据的哈希码;若所述目标变量数据的类型为Integer,则获取所述目标变量数据中包含的数字,根据所述数字计算所述目标变量数据的哈希码;在计算得到各个变量数据的哈希码后,根据计算得到的哈希码将对应的变量数据存入有序序列中。可选的,所述重要程度标识信息包括权重;所述在监测到变量数据执行操作时,将执行操作的变量数据的权重进行调整包括:监测到变量数据执行操作时,将执行操作的变量数据的权重增大预设值;或监测到变量数据执行操作时,根据所述操作将执行操作的变量数据的权重增大预设值。可选的,所述重要程度标识信息包括权重;所述根据调整后的各个变量数据的权重,将权重满足预设条件的变量数据通过表头插入方式插入单向链表中包括:每隔预设时间获取一次各个变量数据中权重最大的变量数据;将权重最大的变量数据通过表头插入方式插入所述单向链表中。本专利技术实施例的第三方面提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如上述数据缓存方法的步骤。本专利技术实施例与现有技术相比存在的有益效果是:本专利技术实施例,将各个变量数据存入有序序列中,且每个变量数据对应设置有一个权重,监测各个变量数据是否执行操作,并在监测到变量数据执行操作时,将执行操作的变量数据的权重进行调整,根据调整后的各个变量数据的权重,将权重满足预设条件的变量数据通过表头插入方式插入单向链表中,而单向链表具有固定的长度,在存入新的变量数据时,单向链表中表尾的数据就会被淘汰,因此单项链表中的变量数据均为比较常用的变量,通过从单向链表中直接调用变量数据能够减少搜索,节省程序运行的消耗,能在内存中保持一定数量的js变量供开发者使用而不必频繁的访问原型链来获取变量,从而能够极大地提高变量获取的性能。附图说明为了更清楚地说明本专利技术实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图1是本专利技术实施例提供的数据缓存方法的流程图;图2是图1中步骤S101的实现流程图;图3是图1中步骤S103的实现流程图;图4是本专利技术实施例提供的另一数据缓存方法的流程图;图5是本专利技术实施例提供的又一数据缓存方法的流程图;图6是本专利技术实施例提供的数据缓存程序的运行环境示意图图7是本专利技术实施例提供的数据缓存程序的功能模块图。具体实施方式以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本专利技术实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本专利技术。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本专利技术的描述。本专利技术实施例的说明书和权利要求书中的技术术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本专利技术的实施例能够以除了在这里图示或描述的那些以外的顺序实施。为了说明本专利技术所述的技术方案,下面通过具体实施例来进行说明。实施例一图1示出了本专利技术实施例一提供的数据缓存方法的实现流程,详述如下:步骤S101,将各个变量数据存入有序序列中,每个变量数据对应设置有一个重要程度标识信息。其中,可以通过键值对的形式来存取变量数据。例如,所有变量数据封装在一个对象obj内,该对象obj内封装存储有包含hash的key(关键值)为index(索引)、对象权重和数据实体对象。index根据用户配置此值可以为从0到可缓存变量的最大值。本实施例中,所述重要程度标识信息具体可以为权重,即每个变量数据对应设置一个权重,各个变量数据的权重的初始值可以相同,在后续执行操作之后,变量数据的权重发生变化,例如变大或变小。这里本文档来自技高网...

【技术保护点】
一种数据缓存方法,其特征在于,包括:将各个变量数据存入有序序列中,每个变量数据对应设置有一个重要程度标识信息;监测各个变量数据是否执行操作,并在监测到变量数据执行操作时,将执行操作的变量数据的重要程度标识信息进行调整;根据调整后的各个变量数据的重要程度标识信息,将重要程度标识信息满足预设条件的变量数据通过表头插入方式插入单向链表中;其中,所述单向链表具有预设长度。
【技术特征摘要】
1.一种数据缓存方法,其特征在于,包括:将各个变量数据存入有序序列中,每个变量数据对应设置有一个重要程度标识信息;监测各个变量数据是否执行操作,并在监测到变量数据执行操作时,将执行操作的变量数据的重要程度标识信息进行调整;根据调整后的各个变量数据的重要程度标识信息,将重要程度标识信息满足预设条件的变量数据通过表头插入方式插入单向链表中;其中,所述单向链表具有预设长度。2.如权利要求1所述的数据缓存方法,其特征在于,所述将各个变量数据存入有序序列中包括:若目标变量数据的类型为Object,则获取所述目标变量数据的地址,根据所述地址计算所述目标变量数据的哈希码,所述目标变量数据为各个变量数据中的任意一个变量数据;若所述目标变量数据的类型为String,则获取所述目标变量数据中包含的字符串,根据所述字符串计算所述目标变量数据的哈希码;若所述目标变量数据的类型为Integer,则获取所述目标变量数据中包含的数字,根据所述数字计算所述目标变量数据的哈希码;在计算得到各个变量数据的哈希码后,根据计算得到的哈希码将对应的变量数据存入有序序列中。3.如权利要求1所述的数据缓存方法,其特征在于,所述重要程度标识信息包括权重;所述在监测到变量数据执行操作时,将执行操作的变量数据的重要程度标识信息进行调整包括:在监测到变量数据执行操作时,将执行操作的变量数据的权重增大预设值。4.如权利要求1所述的数据缓存方法,其特征在于,所述重要程度标识信息包括权重;所述在监测到变量数据执行操作时,将执行操作的变量数据的权重进行调整包括:在监测到变量数据执行操作时,根据所述操作将执行操作的变量数据的权重增大预设值。5.如权利要求1至4任一项所述的数据缓存方法,其特征在于,所述重要程度标识信息包括权重;所述根据调整后的各个变量数据的重要程度标识信息,将重要程度标识信息满足预设条件的变量数据通过表头插入方式插入单向链表中包括:每隔预设时间获取一次各个变量数据中权重最大的变量数据;将权重最大的变量数据通过表头插入方式插入所述单...
【专利技术属性】
技术研发人员:张宇,
申请(专利权)人:平安科技深圳有限公司,
类型:发明
国别省市:广东,44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。