【技术实现步骤摘要】
一种微服务架构下配置文件生成及管理的简单通用方法
[0001]本专利技术涉及数字信息
,具体是一种微服务架构下配置文件生成及管理的简单通用方法。
技术介绍
[0002]在程序的使用中,配置文件是必不可少的。不同的程序配置文件所需要遵循的语法也不尽相同,几乎每个程序都有一套自己的方法,这在微服务架构中,就会产生过多的配置文件需要进行管理,在程序启动之前,需要将不同的配置文件进行单独配置,然后分配给不同的微服务程序使用,在管理中容易造成混乱、混淆,进而可能导致服务无法正常启动并工作。
[0003]微服务多采用Kubernetes作为载体,现有用于配置管理的方式多采用配置中心、基于Kubernetes中的ConfigMap功能进行管理或直接人工修改并将其固化(静态配置管理)在服务中使用。在服务支持热加载的情况下,基于ConfigMap功能的管理方式对于需要较为频繁修改的配置文件具有明显的优势,能够显著减少业务的中断频率,但是它修改后必需要等待固定时长刷新生效、必须在Pod之前创建;固化配置的方式则更为原始,耦合性强且 ...
【技术保护点】
【技术特征摘要】
1.一种微服务架构下配置文件生成及管理的简单通用方法,其特征在于,包括本方案使用Python编程语言开发,整个结构只包含config、templates、generate目录分别对生成后的配置文件、自定义模板、自定义解析脚本及依赖脚本;其工作原理如下:S1-1:由用户自定义配置文件的模板;S1-2:注入需要使用的环境变量默认会从系统环境变量中读取;S2:执行自定义编写的解析脚本或使用命令行参数位于“generate.py”文件中执行;S3:检查所需的环境变量是否已注入;若未注入则退出并打印报错信息;若已注入则进下一步;S4:检查是否找到相应的模板;若未找到则退出并打印报错信息;若已找到则进下一步;S5:开始尝试生成配置文件。若上述检查均无误则会在config目录下生成去掉了指定后缀名tmpl的文件,反之则退出并打印错误信息。2.根据权利要求1所述的一种微服务架构下配置文件生成及管理的简单通用方法,其特征在于,所述本发明安装语言执行环境Python 2.7。3.根据权利要求1所述的一种微服务架构下配置文件生成及管理的简单通用方法,其特征在于,所述本发明安装argparse任意支持Python 2.7环境的版本库。4.根据权利要求1所述的一种微服务架构下配置文件生成及管理的简单通用方法,其特征在于,所述本发明执行“python generate.py
--
src../templates/example.tmpl
--
envs"example_args_1=EXAMPLE_1&example_args_2=EXAMPLE_2"”命令生成文件到config目录。5.根据权利要求1所述的一种微服务架构下配置文件生成及管理的简单通用方法,其特征在于,所述命令行参数解析代码import osfrom argparsekit import parserimport generatekit as gkitB_PATH=os.path.dirname(os.path.abspath(__file__))def generate_cmd(args):d={}if args.envs and not args.file:d=gkit._kv_split_to_dict(args.envs,args.split_char)elif args.file and not args.envs:d=gkit._json_from_file(args.file)else:for k in gkit._env...
【专利技术属性】
技术研发人员:赵晓丽,
申请(专利权)人:成都格斗科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。