作者回复: 说实话,InfluxDB我也没有实际生产经验,但了解它开源的是单机版,集群需要商业版才支持。
InfluxDB是一个不错的时间序列+分析型数据库,在社区热度仅次于Prometheus,而且外围生态也不错,各种集成客户端很丰富。
如果要生产使用的话,建议要有一定的定制自研能力。我了解到携程运维监控系统是基于InfluxDB的。另外,之前饿了么也用InfluxDB,还定制了自己的集群方案,可以参考:
饿了么 Influxdb 实践之路
https://studygolang.com/articles/10120
作者回复: apollo有本地缓存,作为高可用的一部分,防止configservice挂,客户端获取不到配置。
可以参考apollo官方文档:
https://github.com/ctripcorp/apollo/wiki/Java客户端使用指南:1.2.3 本地缓存路径
作者回复: 你好,apollo支持CAT监控,CAT可以监控gc等jvm状态,apollo以自动扫描方式支持CAT,类似动态SPI机制,也就是如果你引入了CAT客户端jar(且配置好),apollo就启用CAT,如果你没引入CAT客户端,它就不启用,所以代码中看不到直接调用CAT,但是在core中可以看到接口适配和SPI代码。
作者回复: 一套环境的configservice共用同一个ApolloConfigDB数据库,不同环境用不用ApolloConfigDB数据库,不用同步
作者回复: apollo client是嵌在业务服务代码中的库lib,一般没有lib挂的说法,当然业务服务进程可能挂,但一般业务服务无状态以集群方式布署,挂一二个也无问题。
作者回复: java 动态类加载spi+检查cat类是否存在+反射,具体请看apollo core里头源码