# 1. ConfigMap/Secret 以卷或环境变量挂载时,Spring Boot 如何感知变更实现配置热更新,两种挂载方式的热更新能力有何差异 A 卷挂载可被 kubelet 更新文件而支持热更新,环境变量挂载启动即固定不支持热更新 ✓ 正确答案 B 两种方式都支持热更新 C 环境变量挂载支持热更新,卷挂载不支持 D 两者都需重启容器才能生效
# 2. Java 容器的 CPU 与内存 requests、limits 如何影响 HotSpot 感知资源、GC 线程数和调度优先级 A GC 线程数与 CPU 无关 B JVM 完全忽略 cgroup,只能用宿主机资源 C requests 与 limits 对 JVM 无影响 D HotSpot 通过 cgroup 感知 CPU/内存,CPU limits 影响 GC 线程数,请求与限制决定 QoS 与驱逐优先级 ✓ 正确答案
# 3. K8s Pod 的 readiness 与 liveness 探针在 Spring Boot Actuator 中如何区分业务可用与进程存活 A Actuator 只能提供单一健康端点 B 两者失败都会重启容器 C readiness 失败会重启容器,liveness 只移出流量 D readiness 失败移出流量不重启,liveness 失败重启容器,Actuator 可分组健康检查 ✓ 正确答案
# 4. K8s 中 Pod 的 resources.requests 与 limits 在 JVM 堆内存识别与 JDK 25 的容器感知默认值 A JVM 堆只看宿主机内存,与容器 limits 无关 B JVM 按容器 limits 与 MaxRAMPercentage 计算默认堆,避免超过容器上限被 OOMKilled ✓ 正确答案 C requests 决定 JVM 堆大小 D JDK 25 无法感知 cgroup 内存
# 5. Kubernetes 1.33 的 Sidecar 容器 GA 与 Spring Boot 应用的多容器 Pod 模式 A Sidecar 只用于前端应用 B Sidecar 容器必须与主容器完全独立运行 C 多容器 Pod 无生命周期管理 D 原生 Sidecar 支持独立生命周期管理,Spring Boot 可用日志/代理/监控等辅助容器协作 ✓ 正确答案
# 6. Kubernetes 1.31 中 PodSchedulingGate 与 Spring Boot 4.0 启动钩子(PostConstruct) A 前者在调度层控制 Pod 何时被调度,后者在应用层控制初始化时机,二者正交 ✓ 正确答案 B 二者都是应用启动钩子 C PodSchedulingGate 控制 JVM 初始化 D PostConstruct 影响调度决策
# 7. Kubernetes 与 Spring Boot 4.x 的 deployment 模板 A 模板应配置资源限制、探针指向 Actuator 健康端点、ConfigMap/Secret 注入与优雅停机 ✓ 正确答案 B Deployment 模板无需配置探针 C 配置只能硬编码,无法注入 D 优雅停机与 K8s 无关
# 8. Spring Boot 4.0 应用在 K8s 中使用 HPA 与 Custom Pod Autoscaler 基于 Kafka lag 的弹性扩缩 A HPA 无法基于自定义指标扩缩 B 副本数可无限增加,与分区无关 C KEDA 基于 lag 等事件扩缩副本,且副本数应与 Kafka 分区数匹配 ✓ 正确答案 D lag 与扩缩无关
# 9. Spring Boot 应用在 K8s 中通过 Spring Cloud OpenFeign 调用集群内服务时的 DNS 缓存策略 A 缓存越久越利于故障转移 B DNS 缓存与故障转移无关 C JVM DNS 缓存 TTL 影响 Service 端点变化感知,应合理设置 TTL 并配合负载均衡 ✓ 正确答案 D OpenFeign 不经过 DNS 解析
# 10. 使用 OpenTelemetry Operator 在 K8s 中自动注入 Java Agent 与 Spring Boot 4.0 的兼容矩阵 A 自动注入基于字节码增强,兼容性取决于 Agent 与 Spring Boot/JDK 版本 ✓ 正确答案 B Agent 注入与框架版本完全无关 C 自动注入无需考虑 JDK 版本 D 注入后无法采集遥测
# 11. 使用 Spring Boot K8s Client(fabric8) A fabric8 与 Spring 配置无关 B fabric8 只能读取,无法修改资源 C fabric8 提供 KubernetesClient 操作资源、监听事件,可与 Spring Boot 集成 ✓ 正确答案 D fabric8 无法监听事件
# 12. 在 K8s 中使用 Spring Boot 4.0 配合 Virtual Threads 的 Pod 内存 footprint 实测数据如何 A 虚拟线程比 OS 线程占用更多内存 B 虚拟线程栈内存可回收且比 OS 线程小,高并发下可降低 Pod 内存 footprint ✓ 正确答案 C Spring Boot 4.0 不支持虚拟线程 D 虚拟线程与内存无关
# 13. runAsNonRoot、readOnlyRootFilesystem 和 capabilities drop 如何收紧 Java 容器的安全上下文 A 这些设置只影响性能,不影响安全 B 只读根文件系统无需挂载临时目录 C capabilities 与权限无关 D runAsNonRoot、readOnlyRootFilesystem 与 capabilities drop 共同降低容器提权与写入风险 ✓ 正确答案
# 14. startupProbe 成功前如何抑制存活与就绪探针,启动缓慢的 Spring Boot 服务应怎样设阈值 A startup 成功前抑制 liveness,慢启动应用应设置足够长的启动检查窗口 ✓ 正确答案 B startup 与 liveness 同时执行,无抑制 C 慢启动应用无需特殊配置 D startup 只影响就绪,不影响存活
# 15. topologySpreadConstraints 与 Pod 反亲和如何分散副本,无法满足约束时调度器应如何处理 A 反亲和会强制所有副本同节点 B 约束无法满足时总会被忽略 C 二者分散副本,whenUnsatisfiable/preferred 决定无法满足时是拒绝调度还是尽量调度 ✓ 正确答案 D 拓扑约束与调度无关
# 16. 使用 K8s Job 与 CronJob 执行 Spring Boot 批处理任务与 Spring Batch 集成的最佳实践 A Spring Batch 与 Job 无关 B Job 无法控制重试次数 C Job 一次性、CronJob 定时,配合 Spring Batch 需保证幂等并控制重试与并发 ✓ 正确答案 D 批处理无需幂等
# 17. 排查 Pod 尾延迟时,如何关联容器节流、GC、节点压力、网络和探针事件形成证据链 A 需关联节流、GC、节点压力、网络与探针事件,按时间线对齐定位根因 ✓ 正确答案 B 只看单一指标即可定位 C 尾延迟与 GC 无关 D 探针事件不影响尾延迟
# 18. /proc 与 /sys 的诊断价值 A /proc 提供进程信息,/sys/fs/cgroup 提供容器配额,可诊断 JVM 资源感知 ✓ 正确答案 B /proc 与容器资源无关 C /sys 只能查看 GPU D 诊断无需查看这些文件
# 19. A/B 测试与灰度发布在目标、用户分桶与指标评估上的差异,如何组合使用? A A/B 测试用于控制发布风险 B 二者目标完全相同 C 灰度发布用于验证功能效果 D A/B 关注效果对比与分桶,灰度关注风险控制与渐进放量,二者可组合使用 ✓ 正确答案
# 20. DOCKER_BUILDKIT=1 的环境变量启用 A BuildKit 不支持多阶段构建 B BuildKit 与经典构建完全相同 C 启用 BuildKit,提供并行构建、改进的层缓存与安全构建能力 ✓ 正确答案 D BuildKit 无法利用缓存
# 21. Deployment 的 maxSurge 与 maxUnavailable 如何影响滚动发布容量,资源不足时会出现什么停滞 A 它们只影响回滚,不影响发布 B 二者控制滚动发布期间的额外与不可用实例数,资源不足时新 Pod 无法调度导致发布停滞 ✓ 正确答案 C 资源不足不影响滚动发布 D maxSurge 控制不可用实例数
# 22. HPA 按 CPU 利用率扩容为何依赖 requests,启动抖动和指标延迟应怎样设置稳定窗口 A 稳定窗口会加速扩缩 B 利用率与 requests 无关 C 启动抖动不会影响 HPA D 利用率以 requests 为分母,requests 与稳定窗口设置不当会导致扩缩震荡 ✓ 正确答案
# 23. Helm Chart 与 Kustomize 的工程应用 A Kustomize 支持依赖管理 B 二者都是模板语言 C Helm 用模板参数化并支持版本/依赖管理,Kustomize 用 base/overlay 增量补丁 ✓ 正确答案 D Helm 无法参数化部署
# 24. Ingress 的路由规则与 TLS A Ingress 按 host/path 路由到 Service,tls 段配置证书实现 HTTPS,由 Controller 实现 ✓ 正确答案 B Ingress 只能做负载均衡,不能路由 C TLS 证书由应用自行管理,与 Ingress 无关 D Ingress 无法配置 path 匹配
# 25. K8s 下 Spring Boot 优雅停机如何与 Endpoint 摘除配合,preStop、readiness 失败与 SIGTERM 的时序应如何编排避免请求丢失 A preStop 与优雅停机无关 B SIGTERM 立即杀死,无需等待 C readiness 失败不影响端点摘除 D 先 readiness 摘流量,preStop 等待在途请求,SIGTERM 触发优雅停机,terminationGracePeriod 为总宽限 ✓ 正确答案
# 26. K8s 中 NetworkPolicy 与 Spring Cloud Gateway 的路由访问控制如何分层 A NetworkPolicy 做网络层流量隔离,Gateway 做应用层路由与鉴权,形成纵深防御 ✓ 正确答案 B 两者都只做网络层控制 C NetworkPolicy 无法限制流量 D Gateway 只在网络层工作
# 27. KEDA 事件驱动扩缩容与 HPA 的资源指标模型有何差异,缩容到零需要处理哪些冷启动问题 A 冷启动与就绪无关 B 二者指标模型完全相同 C 缩容到零无任何副作用 D KEDA 基于事件指标、HPA 基于资源指标,缩容到零需处理冷启动延迟 ✓ 正确答案
# 28. Kubernetes 1.30 的 ServiceAccount Token 投影与 Spring Cloud Config Client 拉取凭证的兼容性 A 投影 Token 无法用于认证 B 投影 Token 与普通 Secret 相同 C Config Client 无需处理 Token 轮换 D 投影 Token 短期更安全,Config Client 需适配其读取与轮换机制 ✓ 正确答案
# 29. Kubernetes Gateway API 取代 Ingress 的迁移路径在 Spring Cloud Gateway 中的适配工作 A Gateway API 不支持跨 namespace B Gateway API 与 Ingress 完全相同 C 迁移无需适配任何规则 D 迁移需把 Ingress 规则映射为 Gateway API 的 HTTPRoute,并适配策略与 TLS ✓ 正确答案
# 30. Kubernetes Pod 的 Quality of Service(QoS) A QoS 与资源设置无关 B QoS 由 requests/limits 决定,驱逐顺序 BestEffort 最先、Guaranteed 最后 ✓ 正确答案 C BestEffort 最稳定 D Guaranteed 优先被驱逐
# 31. Kubernetes Service(ClusterIP/NodePort/LoadBalancer/Ingress) A LoadBalancer 只能在集群内访问 B 所有类型都只能在集群内访问 C Ingress 是 Service 的一种类型 D ClusterIP 集群内访问,NodePort/LoadBalancer 暴露外部,Ingress 做 L7 路由 ✓ 正确答案
# 32. Kubernetes 的 HPA(Horizontal Pod Autoscaler) A HPA 只能扩大副本,不能缩小 B HPA 只做垂直扩缩容 C HPA 无需 metrics 数据 D HPA 按指标利用率计算期望副本数,支持 min/max 与稳定窗口 ✓ 正确答案
# 33. Kubernetes 的 NetworkPolicy 与流量隔离 A 它用 podSelector 与 ingress/egress 白名单实现流量隔离,依赖 CNI 支持 ✓ 正确答案 B 它无需 CNI 即可生效 C 它只能控制 egress,不能控制 ingress D 网络策略总会生效
# 34. Kubernetes 的 PVC(PersistentVolumeClaim) A PVC 的数据随 Pod 删除而丢失 B PVC 请求存储,PV 提供实际卷,StorageClass 动态供给,数据不随 Pod 重建丢失 ✓ 正确答案 C 所有存储都必须手动创建 PV D PVC 与有状态应用无关
# 35. Kubernetes 的 Pod Security Standards(PSS) A PSS 只有一个等级 B PSS 分 privileged/baseline/restricted 三级,通过准入控制 enforce 策略 ✓ 正确答案 C restricted 允许 root 运行 D PSS 与准入控制无关
# 36. Kubernetes 的 RBAC(基于角色的访问控制) A RBAC 控制网络流量 B Role 与 ClusterRole 完全相同 C Role/ClusterRole 定义权限,Binding 绑定到主体,实现最小权限控制 ✓ 正确答案 D ServiceAccount 不需要授权
# 37. Kubernetes 的 etcd 备份与恢复 A 恢复无需停止 apiserver B etcd 无需备份 C etcd 存储集群状态,用 snapshot 备份/恢复,定期备份与恢复演练保障可恢复 ✓ 正确答案 D etcd 只存日志,不存状态
# 38. Kubernetes 的 kubectl exec/logs/port-forward A port-forward 用于删除 Pod B 三者都只能查看资源 C logs 能进入容器执行命令 D exec 进入容器、logs 查看日志、port-forward 端口转发,用于调试与排障 ✓ 正确答案
# 39. Kubernetes 的 kubectl get events 的诊断价值 A 事件记录调度、探针、重启等资源生命周期信息,是排障的重要线索 ✓ 正确答案 B 事件只显示成功信息 C 事件与排障无关 D get events 无法过滤
# 40. Kubernetes 的 kubectl rollout undo 与版本管理 A 回滚会自动处理数据库变更 B Deployment 不保留版本历史 C rollout 无法回滚 D 每次更新生成 revision,rollout undo 可回滚到历史版本,是发布失败的回退手段 ✓ 正确答案
# 41. Kubernetes 的 kubectl top 与资源监控 A 资源监控只能查看历史 B kubectl top 无需 metrics-server C kubectl top 显示节点/Pod 资源使用,依赖 metrics-server,用于排障与容量评估 ✓ 正确答案 D kubectl top 无法查看节点
# 42. Kubernetes 的健康检查(liveness/readiness/startup) A 三种探针语义相同 B liveness 失败重启、readiness 失败摘流量、startup 成功前抑制 liveness ✓ 正确答案 C readiness 失败会重启容器 D startup 与启动无关
# 43. NetworkPolicy 在没有支持该能力的 CNI 时为何可能无效,默认拒绝策略应如何验证 A 策略由 kubelet 直接执行 B 所有 CNI 都支持 NetworkPolicy C NetworkPolicy 无需验证 D 策略执行依赖支持 NetworkPolicy 的 CNI,不支持时策略无效,需用网络工具验证 ✓ 正确答案
# 44. Pod 的 Guaranteed、Burstable 与 BestEffort QoS 如何决定驱逐顺序,OOMKilled 又由哪层触发 A OOMKilled 由 kubelet 触发 B QoS 决定 kubelet 驱逐顺序,OOMKilled 由内核因容器超 cgroup 限制触发 ✓ 正确答案 C Guaranteed 绝对不会被 OOMKilled D 驱逐由内核直接触发
# 45. Pod 的生命周期(Pending/Running/Succeeded/Failed) A Pending 未调度、Running 运行中、Succeeded/Failed 退出,阶段反映整体状态 ✓ 正确答案 B Pending 表示运行成功 C Failed 表示容器还在运行 D 阶段与容器状态无关
# 46. Pod 的资源请求与限制(requests/limits) A requests 是运行上限 B requests 是调度预留,limits 是运行上限,超限会被节流或 OOM ✓ 正确答案 C limits 决定调度 D 二者只影响性能,不影响安全
# 47. Secret 以明文环境变量注入存在哪些风险,投射式令牌与外部密钥系统(Vault)如何改善凭据安全 A Vault 无法管理凭据 B 环境变量注入很安全,无需改善 C 投射式令牌是长期凭据 D 明文环境变量易泄露且无轮换,投射式令牌与 Vault 提供短期受控可审计的凭据 ✓ 正确答案
# 48. Spring Boot 4.0 在 K8s 中使用 Argo Rollouts 实现金丝雀发布与 Prometheus 指标驱动的自动回滚 A 金丝雀发布无法自动回滚 B 它用 AnalysisTemplate 分析 Prometheus 指标,指标超阈值自动回滚 ✓ 正确答案 C 指标与回滚决策无关 D Argo Rollouts 只支持蓝绿
# 49. StatefulSet 与有状态应用 A 它提供稳定网络身份与每副本独立 PVC,适合有状态应用 ✓ 正确答案 B 它适合无状态应用 C StatefulSet 无稳定存储 D 所有副本共享一个 Pod 名
# 50. StatefulSet 的稳定网络身份和有序更新解决什么问题,持久卷为何不会随 Pod 自动迁移数据 A StatefulSet 无稳定身份 B PVC 会随 Pod 自动迁移 C 持久卷与节点无关 D 稳定身份与有序更新保障有状态应用,PVC 绑定节点存储,数据不随 Pod 自动迁移 ✓ 正确答案
# 51. Trivy 的 --severity 过滤与 .trivyignore 的漏洞忽略策略(误报管理) A .trivyignore 会忽略所有漏洞 B --severity 控制报告级别,.trivyignore 忽略确认为误报的漏洞,需定期审查 ✓ 正确答案 C severity 过滤与门禁无关 D 误报无需管理
# 52. cron 与定时任务的触发精度与分布式场景限制,如何用分布式调度补充? A 分布式调度无必要 B cron 天然支持分布式只执行一次 C cron 精度分钟级且无法保证分布式只执行一次,需分布式调度保证唯一执行与失败处理 ✓ 正确答案 D cron 精度到秒级
# 53. nerdctl(containerd CLI)的兼容性 A 它只能管理镜像,不能运行容器 B 它是 containerd 的 CLI,命令与 Docker CLI 高度兼容,用于无 Docker 守护进程环境 ✓ 正确答案 C 它与 Docker CLI 完全无关 D 它必须依赖 Docker 守护进程
# 54. K8s 1.31 中 Ephemeral Containers 在 Spring Boot 在线诊断与 jcmd 注入的最佳实践 A 临时容器会重启原容器 B 临时容器可注入诊断工具(jcmd/jmap)不重启原容器,适合 JVM 在线诊断 ✓ 正确答案 C 临时容器无法访问进程命名空间 D 诊断无需考虑权限
# 55. Kubernetes Deployment/StatefulSet/DaemonSet/Job/CronJob 在 Spring Boot 应用场景的取舍 A 所有应用都用 StatefulSet B 无状态服务用 Deployment,有状态用 StatefulSet,批处理用 Job/CronJob ✓ 正确答案 C 批处理用 Deployment D DaemonSet 适合多副本无状态服务
# 56. readinessProbe 失败只会移出流量而不会重启容器,这一语义如何用于依赖故障和优雅降级 A readiness 用于进程存活判断 B readiness 失败会重启容器 C 摘流量后无法恢复 D 失败只摘流量不重启,依赖恢复后自动重新就绪,适合依赖故障优雅降级 ✓ 正确答案
# 57. 健康检查(Health Check)的多层次(探针/接口) A 探针层管生命周期、Actuator 健康接口聚合依赖、业务层做深度验证,多层配合 ✓ 正确答案 B 健康检查只需探针 C Actuator 与探针无关 D 业务层检查无用
# 58. 投射式 ServiceAccount 令牌相比旧的长期 Secret 有何安全优势,受众与过期时间如何配置 A 令牌长期有效 B 令牌短期、绑定受众、自动轮换,比长期 Secret 降低泄露风险 ✓ 正确答案 C 令牌无法绑定受众 D 令牌与轮换无关
# 59. 日志收集(Filebeat/Fluentd/Loki) A Loki 与 ELK 完全相同 B 日志只需采集,无需存储 C Filebeat/Fluentd 采集,Loki/ELK 存储查询,构成采集-存储-查询分层 ✓ 正确答案 D 日志收集与监控无关
# 61. 部署与回滚的 Runbook 工程实践 A Runbook 只在故障后使用 B Runbook 无需文档化 C 回滚无需流程 D Runbook 标准化部署与回滚步骤并文档化,定期演练减少人为失误 ✓ 正确答案
# 62. Feature Flag(LaunchDarkly/自研)的应用 A Flag 无需清理 B Feature Flag 只能用于前端 C 开关无法控制回滚 D 用开关控制功能启停,支持灰度发布、快速回滚,需规范命名与清理 ✓ 正确答案
# 63. Service 如何只把流量发送到 Ready 端点,EndpointSlice 在大规模服务中改善了什么 A Service 只路由到 ready 端点,EndpointSlice 分片改善大规模端点管理性能 ✓ 正确答案 B Service 会路由到所有不健康端点 C EndpointSlice 与 Endpoints 相同 D 分片与性能无关
# 64. preStop、terminationGracePeriodSeconds 与 SIGTERM 如何协作,超过宽限期后会发生什么 A preStop 后发 SIGTERM 优雅停机,超宽限期则 SIGKILL 强制终止 ✓ 正确答案 B 容器启动时执行 preStop C 超宽限期后容器继续运行 D SIGTERM 会立即杀死进程