在Eureka中注册多个服务(根据本地主机端口号区分)

这篇文章主要介绍如何在Eureka注册中心内注册多个EurekaServer服务端

建项目

创建一个Maven项目,在里面创建三个小的Maven空项目,具体结构如下。


EurekaServer3,即外面的大模块,为了清楚的观察项目结构,我将其src文件夹删除了,因为这个没有用。

导Pom依赖

因为里面的Eureka1-3是同一级别的在EurekaServer3模块内部,因此我们不需要挨个模块去导入依赖,只需在最外层模块中的pom文件中导入即可。具体依赖如下:

xml 复制代码
<parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.1.4.RELEASE</version>
    </parent>
    <dependencies>
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-netflix-eureka-server</artifactId>
            <version>2.1.0.RELEASE</version>
        </dependency>
    </dependencies>
    <dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>org.springframework.cloud</groupId>
                <artifactId>spring-cloud-dependencies</artifactId>
                <version>Greenwich.SR1</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
        </dependencies>
    </dependencyManagement>

创建启动类

启动类,即我在项目里创建的EurekaApplication1-3.因为都是Eureka服务端,故他们三个模块的启动类,除了名字不同,其余的内容均一致。

java 复制代码
@SpringBootApplication
@EnableEurekaServer
public class EurekaApplication {

    public static void main(String[] args) {
        SpringApplication.run(EurekaApplication.class, args);
        System.out.println("注册中心启动!!!");
    }
}

后面两个模块的启动类也和这个类似。

yml文件

Eureka1,即注册中心的application.yml

yml 复制代码
# 服务器端口配置
server:
  port: 6869

# Spring Boot 应用配置
spring:
  application:
    # 应用名称
    name: eureka

# Eureka Server 配置
eureka:
  instance:
    # Eureka 实例的主机名
    hostname: EurekaServer

  client:
    # Eureka 客户端配置
    service-url:
      # Eureka 服务器的地址配置
      defaultZone: http://localhost:${server.port}/eureka/

    # 是否将该实例注册到 Eureka 服务器,默认为 false
    register-with-eureka: false

具体代码即解释已给出,但对于yml文件来说一定要注意格式!!!

Eureka2,即服务端1的application.yml

yml 复制代码
# 服务器端口配置
server:
  port: 6870

# Spring Boot 应用配置
spring:
  application:
    # 应用名称
    name: eureka1

# Eureka Server 配置
eureka:
  instance:
    # Eureka 实例的主机名
    hostname: EurekaServer1

  client:
    # Eureka 客户端配置
    service-url:
      # Eureka 服务器的地址配置
      defaultZone: http://localhost:6869/eureka/

Eureka3,即服务端1的application.yml

yml 复制代码
server:
  port: 6871
spring:
  application:
    name: eureka2
eureka:
  instance:
    hostname: EurekaServer2
  client:
    service-url:
      defaultZone: http://localhost:6869/eureka/

运行

从上到下依次运行即可,注意要等上一个程序运行成功后再运行下一个。

测试

在浏览器上输入[http://127.0.0.1:6869/\],即可跳转到Eureka注册中心。

在只运行注册中心的时候会显示如下界面

在都运行成功的时候:

相关推荐
Leo July8 小时前
【Java】Spring Security 6.x 全解析:从基础认证到企业级权限架构
java·spring·架构
星火开发设计9 小时前
C++ 数组:一维数组的定义、遍历与常见操作
java·开发语言·数据结构·c++·学习·数组·知识
码道功成9 小时前
Pycham及IntelliJ Idea常用插件
java·ide·intellij-idea
消失的旧时光-19439 小时前
第四篇(实战): 订单表索引设计实战:从慢 SQL 到毫秒级
java·数据库·sql
それども9 小时前
@ModelAttribute vs @RequestBody
java
雨中飘荡的记忆10 小时前
深度详解Spring Context
java·spring
Tao____10 小时前
JAVA开源物联网平台
java·物联网·mqtt·开源·ruoyi
yqd66610 小时前
SpringSecurity的使用
java·spring
仙俊红10 小时前
Java Map 家族核心解析
java·开发语言
一嘴一个橘子11 小时前
springMvc 接收参数、cookie、header
java