只会一点java

java持续学习者,每月一篇博客。罗列出技术栈,慢慢完善,持续学习,总有一天,你会追上甚至超越曾经的大神。
  博客园  :: 首页  :: 联系 :: 订阅 订阅  :: 管理

一、现象

apollo开启秘钥,服务获取配置参数需要启动参数中添加:jvm参数-Dapollo.accesskey.secret=XXX。日志如下:

二、解决方案

应用服务器时间异常,重置应用服务器时间即可。

三、原因

看了源码后,在获取apollo参数时,使用当前服务器时间作为参数做了加密。怀疑apollo那边进行了时间校验。比如加密时的时间必须<apollo那边校验密码时的时间。所以如果应用服务器时间>当前真实时间,bug出现

四、log日志

INFO [restartedMain] DefaultApplicationProvider.initAccessKey(131)
- ACCESSKEY SECRET is set by apollo.accesskey.secret property from System Property--->确实获取到秘钥了。

RemoteConfigRepository.loadApolloConfig(195)
- Load config failed, will retry in 1 SECONDS. appId: *, cluster: local, namespaces: application-->最终还是获取配置失败!!