趁工作不忙的时候研究了下嗯的Config server的技术,学习一下里面的思路
一、API 介绍
1. config server service: 这个服务里面放的是业务中需要的业务配置,比如银行信息json文件(银行的code,display code,name),产品的类型文件(产品名,产品分类)等,利用了Spring-cloud-config-server 依赖
2. global utilities API service:业务API, 会通过远程访问config server service拿到业务配置,然后进行相应的处理返回给客户
二、知识点
- 读写锁的使用:ReentrantReadWriteLock
- 缓存的使用(两级缓存):ConcurrentHashMap,一级缓存的key是文件名+文件类型转换器value是LinkedTreeMap;二级缓存的key是文件名,value是String对象,里面放的是从config server拿过来的json串
- compute方法的使用
- 定时器的使用:@EnableScheduling 和 @Scheduled(initialDelaying = "${config.field:10000}",fixedDelayString = "${config.field:10000}", 里面的时间单位是毫秒
- InitialzingBean接口的使用
- Spring bean依赖的注解以及注入顺序
- BiFunction类的使用
- 工具的集成
三、实现逻辑梳理
1.需求背景:业务