Spring Cloud学习笔记:Eureka集群搭建样例

这是本人学习的总结,主要学习资料如下

  • 马士兵教育

1、项目架构

因为这是单机模拟集群搭建,为了方便管理就都放在了一个项目中。这次准备搭建三个项目server1, server2, server3

2、Dependency

项目依赖放根目录,免得代码重复

xml 复制代码
<dependencies>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter</artifactId>
        <version>${spring.boot.version}</version>
    </dependency>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
        <version>${spring.boot.version}</version>
    </dependency>
    <dependency>
        <groupId>org.projectlombok</groupId>
        <artifactId>lombok</artifactId>
        <version>1.18.30</version>
    </dependency>
    <dependency>
        <groupId>org.springframework.cloud</groupId>
        <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
    </dependency>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-actuator</artifactId>
        <version>${spring.boot.version}</version>
    </dependency>
    <dependency>
        <groupId>org.springframework.cloud</groupId>
        <artifactId>spring-cloud-starter-openfeign</artifactId>
    </dependency>
    <dependency>
        <groupId>org.springframework.cloud</groupId>
        <artifactId>spring-cloud-netflix-eureka-server</artifactId>
    </dependency>
</dependencies>

3、项目启动类

分别在三个module中写启动类,类名改一下就好。

java 复制代码
@EnableEurekaServer
@SpringBootApplication(exclude = {GsonAutoConfiguration.class})
public class EurekaServer1Application {
    public static void main(String[] args) {
        SpringApplication.run(EurekaServer1Application.class);
    }
}

4、application.yml

配置如下,基本和单机配置一致,只不过要多加一个属性表示这三个服务组成一个集群。

yml 复制代码
spring:
  application:
    name: eureka-cluster
server:
  port: 1001

eureka:
  instance:
    hostname: eureka-1
    # 是否将自己ip注册到eureka中,默认false
    prefer-ip-address: true
  client:
    service-url:
      defaultZone: http://eureka-1:1001/eureka/,http://eureka-2:1002/eureka/,http://eureka-3:1003/eureka/
      

另外,我在自己电脑上对hosts文件做了修改,所以配置中hostname不是localhost

bash 复制代码
192.168.2.3 eureka-1
192.168.2.3 eureka-2
192.168.2.3 eureka-3

5、启动项目

启动三个项目,到配置页中检查。因为已成集群,所以三个地址都会指向同一个配置页。http://eureka-1:1001http://eureka-2:1002http://eureka-3:1003

可以看到有三个服务组成集群。

相关推荐
是孑然呀18 分钟前
【笔记】激光定位-激光切割指针偏移设置
笔记
光影少年1 小时前
Python+LangGraph学习路线及发展前景
开发语言·人工智能·python·学习
星辰即远方1 小时前
UI学习3
学习·ui
中屹指纹浏览器1 小时前
2026指纹浏览器性能优化实战:多开稳定性与资源占用控制全解析
经验分享·笔记
一只大袋鼠2 小时前
MyBatis 特性(三):缓存、延迟加载、注解开发
java·数据库·笔记·sql·缓存·mybatis
三品吉他手会点灯2 小时前
C语言学习笔记 - 3. C概述 - C语言的起源和发展
c语言·笔记·学习
爱莉希雅&&&3 小时前
MySQL MGR 组复制 完整笔记
linux·数据库·笔记·mysql·mgr·数据库同步
Alice-YUE3 小时前
ai对话平台中的functioncalling+mcp
前端·笔记·学习·语言模型
峥无3 小时前
Linux进程控制完全笔记(fork→exec→wait→Shell)
linux·笔记·unix
王的宝库3 小时前
【K8s】集群安全机制(二):授权(Authorization)详解与实战
学习·云原生·容器·kubernetes