跳到主要内容

Spring Boot和微服务面试题

Spring Boot基础运维

应用部署

  1. Spring Boot应用有哪几种部署方式?(jar、war、容器化)
  2. 如何查看Spring Boot应用的版本信息?
  3. Spring Boot应用启动失败如何排查?常见原因有哪些?
  4. 如何验证Spring Boot应用是否启动成功?

配置管理

  1. Spring Boot配置文件优先级是怎样的?
  2. 如何在不重启应用的情况下查看当前配置?
  3. 生产环境配置文件如何管理?如何避免敏感信息泄露?
  4. 如何实现配置的热更新?

端口与健康检查

  1. Spring Boot默认端口是多少?如何修改?
  2. 什么是Actuator?主要用来做什么?
  3. 如何配置健康检查端点?K8s如何使用这些端点?
  4. /health/info/metrics端点的作用分别是什么?

监控与性能

Actuator监控

  1. 生产环境应该开放哪些Actuator端点?
  2. 如何保护Actuator端点的安全?
  3. 如何通过Actuator查看应用的内存使用情况?
  4. 如何监控Spring Boot应用的线程池状态?

性能监控

  1. Spring Boot应用如何集成Prometheus?
  2. 需要监控Spring Boot应用的哪些关键指标?
  3. 如何监控HTTP请求的响应时间和QPS?
  4. 数据库连接池如何监控?

日志管理

  1. Spring Boot默认使用什么日志框架?
  2. 如何配置日志级别?能否动态调整?
  3. 如何实现日志文件的自动轮转?
  4. 容器环境下Spring Boot日志如何收集?

故障排查

启动问题

  1. Spring Boot应用启动慢如何排查?
  2. 端口被占用如何处理?
  3. 应用启动时内存溢出如何解决?
  4. 依赖冲突导致启动失败如何定位?

运行时问题

  1. Spring Boot应用CPU占用高如何排查?
  2. 接口响应慢如何定位是哪个环节的问题?
  3. 应用频繁Full GC如何处理?
  4. 数据库连接池耗尽如何排查?

Spring Cloud Alibaba

注册中心(Nacos)

  1. Nacos作为注册中心的部署模式有哪些?
  2. 如何监控Nacos的健康状态?
  3. 服务注册失败的常见原因?
  4. Nacos集群如何保证高可用?
  5. 如何处理Nacos与服务之间的网络问题?

配置中心

  1. Nacos配置中心如何实现配置的版本管理?
  2. 配置推送失败如何排查?
  3. 如何实现配置的灰度发布?
  4. 配置中心宕机对应用有什么影响?

服务治理

  1. 什么是服务熔断?Sentinel如何实现?
  2. 如何配置Sentinel的流控规则?
  3. Sentinel Dashboard如何部署和使用?
  4. 限流降级规则如何持久化?

微服务运维

服务发现与负载均衡

  1. 服务发现失败会有什么表现?
  2. 如何查看服务的负载均衡是否生效?
  3. 服务下线后,其他服务多久能感知?
  4. 如何实现服务的优雅下线?

链路追踪

  1. 如何部署SkyWalking或Zipkin?
  2. 链路追踪对性能有多大影响?
  3. 如何通过链路追踪定位慢接口?
  4. 链路数据如何存储和清理?

网关运维

  1. Spring Cloud Gateway的部署架构是怎样的?
  2. 如何监控网关的性能指标?
  3. 网关路由配置错误如何快速定位?
  4. 如何实现网关的灰度发布?

容器化与K8s

容器化部署

  1. Spring Boot应用Docker镜像如何优化大小?
  2. 如何处理容器中的时区问题?
  3. JVM参数在容器中如何设置?
  4. 如何实现配置与镜像分离?

K8s集成

  1. Spring Boot应用在K8s中如何实现滚动更新?
  2. 如何配置合适的资源限制(requests/limits)?
  3. Pod频繁重启如何排查原因?
  4. 如何实现基于Spring Boot Actuator的健康检查?

服务网格

  1. Spring Boot应用如何接入Istio?
  2. 使用服务网格后如何排查网络问题?
  3. Sidecar对应用性能有什么影响?

最佳实践

高可用保障

  1. 微服务架构下如何保证整体的高可用?
  2. 如何设计合理的超时和重试策略?
  3. 分布式事务失败如何处理?
  4. 如何避免级联故障?

运维规范

  1. 微服务应用发布的标准流程是什么?
  2. 如何实现金丝雀发布?
  3. 微服务监控体系应该包含哪些内容?
  4. 如何建立微服务的SLA标准?

更新时间:2025-01-30