摘要:
前面已经学习了两个Spring Cloud 组件: Eureka:实现服务注册功能; Ribbon:提供基于RestTemplate的HTTP客户端并且支持服务负载均衡功能。 通过这两个组件我们暂时可以完成服务注册和可配置负载均衡的服务调用。今天我们要学习的是Feign,那么Feign解决了什么问题 阅读全文
摘要:
上一篇分析了Ribbon如何发送出去一个自带负载均衡效果的HTTP请求,本节就重点分析各个算法都是如何实现。 负载均衡整体是从IRule进去的: 通过 choose方法选择指定的算法。 完整的算法包含如下: 1. RandomRule :随机算法实现; 2. RoundRobinRule :轮询负载 阅读全文
摘要:
上一篇结合 Eureka 和 Ribbon 搭建了服务注册中心,利用Ribbon实现了可配置负载均衡的服务调用。这一篇我们来分析Ribbon实现负载均衡的过程。 从 @LoadBalanced入手 还记得前面配置 RestTemplate: 在消费端使用Spring 提供的 RestTemplate 阅读全文
摘要:
前面分析了Eureka的使用,作为服务注册中心,Eureka 分为 Server 端和 Client 端,Client 端作为服务的提供者,将自己注册到 Server 端,Client端高可用的方式是使用多机部署然后注册到Server,Server端为了保证服务的高可用,也可以使用多机部署的方式。前 阅读全文
摘要:
本篇内容用来说明Eureka 常用配置的含义。 以下配置都是以 开头: | 参数 | 描述 | 备注 | | | | | | eureka.server.eviction interval timer in ms | server清理无效节点的时间间隔 | 默认60秒 | | eureka.serv 阅读全文
摘要:
Eureka Client 是一个Java 客户端,用于简化与Eureka Server的交互,客户端同时也具备一个内置的、使用轮询负载算法的负载均衡器。 在应用启动后,将会向Eureka Server发送心跳(默认周期为30秒),如果Eureka Server在多个心跳周期没有收到某个节点的心跳, 阅读全文
摘要:
本篇我们着重分析Eureka服务端的逻辑实现,主要涉及到服务的注册流程分析。 在Eureka的服务治理中,会涉及到下面一些概念: 服务注册 :Eureka Client会通过发送REST请求的方式向Eureka Server注册自己的服务,提供自身的元数据,比如 IP 地址、端口、运行状况指标的UR 阅读全文