Dubbo 和 Feign的区别是什么?
Dubbo是高性能RPC框架,支持多种协议与服务治理,适用于Java微服务架构;Feign是声明式HTTP客户端,简化Spring Cloud服务调用。两者定位不同,Dubbo强在性能与治理,Feign重在易用与集成。
Ribbon是怎么做负载均衡的?
Ribbon 是 Spring Cloud 中的客户端负载均衡器,通过注册中心(如 Nacos)获取服务列表并本地缓存,结合多种负载均衡策略(如轮询、随机、权重等)选择实例。它利用拦截器在请求时动态路由,支持动态刷新、重试、超时控制等机制,提升系统可用性与容错能力。
application.yml和bootstrap.yml这两个配置文件有什么区别?
`bootstrap.yml` 与 `application.yml` 是 Spring Boot/Cloud 项目中的两类配置文件。前者用于应用启动前加载,主要配置远程配置中心(如 Nacos)、加密等关键信息,优先级高;后者是默认主配置,用于常规配置如端口、数据库等。自 Spring Boot 2.4+ 起,默认不再启用 `bootstrap` 机制,推荐使用 `spring.config.import` 在 `application.yml` 中统一导入配置,以简化流程、降低复杂度。纯 Spring Boot 应用不加载 `bootstrap.yml`。