一种基于配置缓存到期时间的参数配置获取方法和系统与流程

文档序号:33005925发布日期:2023-01-18 04:01阅读:20来源:国知局
一种基于配置缓存到期时间的参数配置获取方法和系统与流程

1.本发明涉及数据缓存技术领域,尤其涉及一种基于配置缓存到期时间的参数配置获取方法和系统。


背景技术:

2.当前,越来越多的应用系统采用微服务架构,系统参数配置分散在系统各个模块,由于各个服务的参数配置大部分分散在各个应用系统内部或者集群配置文件中,不支持动态修改配置,或者修改配置后需要重启服务才能生效,不利于统一维护,且有些配置存在硬编码,无法灵活支撑系统扩展和业务变更需求。目前开源的配置中心,比如apollo,nacos等,虽然功能完善,但在系统部署、运维、扩展以及与现有系统融合方面存在一定困难。部分应用支持通过http方式从配置中心获取参数,并在客户端进行缓存。但客户端的缓存时间一般配置在应用程序内部,不方便实时修改缓存到期时间,且不支持针对不同参数设置不同的缓存到期时间。另外,服务端因网络或者其它故障不可用时,影响客户端的接口调用。
3.因此,如何提供一种轻量且支持灵活配置的缓存技术方法,成为亟待解决的技术问题。


技术实现要素:

4.有鉴于此,本发明主要解决的是,提供一种轻量级配置方法,包含服务端和客户端,支持参数的灵活配置,开箱即用。支持通过服务端页面配置客户端的缓存到期时间,解决客户端缓存到期时间不能灵活修改的问题。另外,针对不同的应用场景,不同的参数可配置不同的缓存到期时间,实现更精细化的缓存到期控制策略。
5.一方面,本发明提供一种基于配置缓存到期时间的参数配置获取方法,包括:
6.通过客户端查询待获取的参数配置,所述参数配置包括用于配置客户端缓存到期时间的缓存到期时长;
7.通过客户端判断待查询的参数配置在本地缓存是否存在,当本地缓存中不存在所述待查询的参数配置,从服务端获取所述参数配置;
8.如果本地缓存中存在所述待查询的参数配置,判断本地缓存中的参数配置是否到期,如果本地缓存中的参数配置到期,从服务端获取所述参数配置;如果本地缓存中的参数配置没有到期,从本地缓存中获取参数配置。
9.进一步地,本发明基于配置缓存到期时间的参数配置获取方法中,当本地缓存中不存在所述待查询的参数配置,从服务端获取所述参数配置,包括:
10.如果获取所述参数配置失败,向客户端返回获取参数配置失败的信息;
11.如果获取所述参数配置成功,将所述参数配置缓存至本地,为参数配置设置缓存到期时间。
12.进一步地,本发明基于配置缓存到期时间的参数配置获取方法中,为参数配置设置缓存到期时间,包括:将当前时间加上从服务端获取的缓存到期时长得到的和值作为参
数配置设置缓存到期时间。
13.进一步地,本发明基于配置缓存到期时间的参数配置获取方法中,判断本地缓存中的参数配置是否到期,包括:比较当前时间与缓存参数的到期时间,如果当前时间的值小于等于缓存参数的到期时间的值,判定缓存参数没有到期,如果当前时间的值大于缓存参数的到期时间的值,判定缓存参数到期。
14.进一步地,本发明基于配置缓存到期时间的参数配置获取方法中,如果本地缓存中的参数配置到期,从服务端获取所述参数配置,包括:
15.如果获取所述参数配置失败,从本地缓存中获取参数配置;
16.如果获取所述参数配置成功,将所述参数配置缓存至本地,为参数配置设置缓存到期时间。
17.进一步地,本发明基于配置缓存到期时间的参数配置获取方法中,为参数配置设置缓存到期时间,包括:将当前时间加上从服务端获取的缓存到期时长得到的和值作为参数配置设置缓存到期时间。
18.进一步地,本发明基于配置缓存到期时间的参数配置获取方法,包括:服务端通过配置页面修改缓存到期时长,对参数配置进行更新,当客户端从服务端获取更新的参数配置,根据更新的参数配置中修改后的缓存到期时长更新设置缓存到期时间。
19.进一步地,本发明基于配置缓存到期时间的参数配置获取方法,包括:客户端通过调用sdk提供的接口查询待获取的参数配置,并通过调用sdk判断待查询的参数配置在本地缓存是否存在。
20.进一步地,本发明基于配置缓存到期时间的参数配置获取方法,还包括:服务端提供api接口供客户端根据参数名获取对应的参数配置。
21.另一方面,本发明基于配置缓存到期时间的参数配置获取系统,包括:
22.客户端,用于查询待获取的参数配置,判断待查询的参数配置在本地缓存是否存在,当本地缓存中不存在所述待查询的参数配置,从服务端获取所述参数配置;如果本地缓存中存在所述待查询的参数配置,判断本地缓存中的参数配置是否到期,如果本地缓存中的参数配置到期,从服务端获取所述参数配置;如果本地缓存中的参数配置没有到期,从本地缓存中获取参数配置;
23.服务端,用于定义参数配置,提供api接口供客户端根据参数名获取对应的参数配置,通过配置页面修改缓存到期时长,对参数配置进行更新。
24.本发明基于配置缓存到期时间的参数配置获取方法和系统,具有以下有益效果:
25.1.服务端支持配置各种参数,并可设置参数的刷新时间(缓存时间);
26.2.提供sdk集成在各类客户端中,方便客户端通过sdk获取服务端的参数数据,并将获取的服务端数据缓存在本地,同时根据服务端返回的刷新时间设置本地缓存的到期时间;sdk支持易用、无侵入、灵活设置缓存到期时间以及容错降级等功能;
27.3.针对不同的应用场景,不同的参数可配置不同的缓存到期时间,实现更精细化的缓存到期控制策略。
附图说明
28.为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附
图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
29.图1为本发明示例性第一实施例基于配置缓存到期时间的参数配置获取方法的流程图。
30.图2为本发明示例性第三实施例基于配置缓存到期时间的参数配置获取系统的架构图。
具体实施方式
31.下面结合附图对本发明实施例进行详细描述。
32.需说明的是,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合;并且,基于本公开中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本公开保护的范围。
33.需要说明的是,下文描述在所附权利要求书的范围内的实施例的各种方面。应显而易见,本文中所描述的方面可体现于广泛多种形式中,且本文中所描述的任何特定结构及/或功能仅为说明性的。基于本公开,所属领域的技术人员应了解,本文中所描述的一个方面可与任何其它方面独立地实施,且可以各种方式组合这些方面中的两者或两者以上。举例来说,可使用本文中所阐述的任何数目个方面来实施设备及/或实践方法。另外,可使用除了本文中所阐述的方面中的一或多者之外的其它结构及/或功能性实施此设备及/或实践此方法。
34.图1为根据本发明示例性第一实施例的一种基于配置缓存到期时间的参数配置获取方法的流程图,如图1所示,本实施例的方法,包括:
35.通过客户端查询待获取的参数配置,所述参数配置包括用于配置客户端缓存到期时间的缓存到期时长;
36.通过客户端判断待查询的参数配置在本地缓存是否存在,当本地缓存中不存在所述待查询的参数配置,从服务端获取所述参数配置,包括:如果获取所述参数配置失败,向客户端返回获取参数配置失败的信息;如果获取所述参数配置成功,将所述参数配置缓存至本地,为参数配置设置缓存到期时间,其中,为参数配置设置缓存到期时间,包括:将当前时间加上从服务端获取的缓存到期时长得到的和值作为参数配置设置缓存到期时间。
37.如果本地缓存中存在所述待查询的参数配置,判断本地缓存中的参数配置是否到期,如果本地缓存中的参数配置到期,从服务端获取所述参数配置,包括:如果获取所述参数配置失败,从本地缓存中获取参数配置;如果获取所述参数配置成功,将所述参数配置缓存至本地,为参数配置设置缓存到期时间,其中,为参数配置设置缓存到期时间,包括:将当前时间加上从服务端获取的缓存到期时长得到的和值作为参数配置设置缓存到期时间;如果本地缓存中的参数配置没有到期,从本地缓存中获取参数配置。
38.本实施例方法中,判断本地缓存中的参数配置是否到期,包括:比较当前时间与缓存参数的到期时间,如果当前时间的值小于等于缓存参数的到期时间的值,判定缓存参数没有到期,如果当前时间的值大于缓存参数的到期时间的值,判定缓存参数到期。
39.本发明示例性第二实施例提供一种基于配置缓存到期时间的参数配置获取方法,本实施例是图1所示方法的优选实施例。
40.本实施例方法,包括:服务端通过配置页面修改缓存到期时长,对参数配置进行更新,当客户端从服务端获取更新的参数配置,根据更新的参数配置中修改后的缓存到期时长更新设置缓存到期时间。
41.本实施例方法,包括:客户端通过调用sdk提供的接口查询待获取的参数配置,并通过调用sdk判断待查询的参数配置在本地缓存是否存在。服务端提供api接口供客户端根据参数名获取对应的参数配置。
42.本实施例方法中,将sdk集成在客户端中,便于客户端通过sdk获取服务端的参数数据,并将获取的服务端数据缓存在本地,同时根据服务端返回的刷新时间设置本地缓存的到期时间;sdk支持易用、无侵入、灵活设置缓存到期时间以及容错降级等功能;可以针对不同的应用场景,不同的参数可配置不同的缓存到期时间,实现更精细化的缓存到期控制策略。
43.sdk即软件开发工具包,是辅助于某一类软件的相关文档、范例和工具的集合。本实施例中的sdk根据本实施例方法和架构建立的开发工具的集合。
44.图2为根据本发明示例性第三实施例的一种基于配置缓存到期时间的参数配置获取系统的架构图,如图2所示,本实施例的系统,包括:
45.客户端,用于查询待获取的参数配置,判断待查询的参数配置在本地缓存是否存在,当本地缓存中不存在所述待查询的参数配置,从服务端获取所述参数配置;如果本地缓存中存在所述待查询的参数配置,判断本地缓存中的参数配置是否到期,如果本地缓存中的参数配置到期,从服务端获取所述参数配置;如果本地缓存中的参数配置没有到期,从本地缓存中获取参数配置;
46.服务端,用于定义参数配置,提供api接口供客户端根据参数名获取对应的参数配置,通过配置页面修改缓存到期时长,对参数配置进行更新。
47.以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1