Java 后端面试题库 / 全部题解免费阅读理解原理,有条理地回答

Apollo 暂时不可用时,应用会怎样降级?

查看完整题解

参考回答

直接回答

已运行的 Java 客户端通常继续使用之前拿到的值,并尝试重新连接。重启时如果找得到对应的磁盘缓存,可以回退读取。远端和缓存都没有时,要看客户端读取的默认值和应用启动策略。

讲清原理

将“是否能读到旧值”和“是否允许用旧值继续接请求”分开。非关键开关可以有安全默认值。租户路由、签名密钥或生产数据源缺失时,先校验是否满足接流量的条件。

运行时内存、重启磁盘缓存和首次启动的区别
运行时内存、重启磁盘缓存和首次启动的区别

例子与易错点

老实例在配置中心故障时仍然工作,但同一批扩容里新 Pod 读不到配置。可以暂时保留老实例容量,并让新实例通过启动条件后再加入流量。

延伸阅读 Apollo 怎样做高可用和故障转移? · Apollo Java 客户端为何保留磁盘缓存? · Apollo 配置首次加载失败,应用该怎么启动?

这道题,你掌握得怎么样?

掌握程度由你主动标记,阅读和收藏不会自动改变状态。