Eureka 学习之 Client软负载均衡(三)
这篇主要介绍 Eureka Client 是怎么实现软负载均衡的(纯demo演示非源码层面),我的个人习惯,先跑一整编Demo 最后再研究源码,源码放到最后边学边记录。
1. Eureka Client 多节点
这里就不记录怎么创建 Server 了,有兴趣的同学可以看我的前2篇 Eureka 学习文章。一般的微服务架构会根据业务进行服务拆分,单服务器多节点的情况下大多数的部署方法如下表
业务模块 | 应用程序名 | 端口号 |
---|---|---|
用户管理 | service-user | 20001-20010 |
部门管理 | service-dept | 20011-20020 |
… | … | … |
下面就实战操作一下
1.1 创建 Eureka Client service-user
我使用了Idea Spring Initializr
创建的项目,就不做截图了。 File-New-project 选择 Spring Initializr 插件。
- 添加
Eureka Discovery Client
依赖 - 添加
Spring Web starter
依赖。 - 添加
OpenFeign
依赖
- Maven 配置
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.1.6.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<groupId>com.blackhold</groupId>
<artifactId>spring-cloud-eureka-consumer</artifactId>
<version>0.0.1-SNAPSHOT</version>
<name>spring-cloud-eureka-consumer</name><