博客
关于我
SpringCloud之服务注册Eureka及集群
阅读量:512 次
发布时间:2019-03-07

本文共 4101 字,大约阅读时间需要 13 分钟。

Spring Cloud之服务注册Eureka及集群配置说明

1. Eureka注册中心

1.1 Eureka服务器端的配置

要搭建一个Eureka注册中心,首先需要配置服务器端的pom文件和启动类。

1.1.1 pom文件依赖

在项目的pom文件中添加以下依赖:

org.springframework.cloud
spring-cloud-starter-eureka-server

完整的pom文件示例如下:

4.0.0
com.atguigu.springcloud
microservicecloud
0.0.1-SNAPSHOT
microservicecloud-eureka-7001
org.springframework.cloud
spring-cloud-starter-eureka-server
org.springframework
springloaded

1.1.2 YAML配置文件

Eureka服务器端的服务端配置文件(eureka.yml)内容如下:

server:    port: 7001eureka:    instance:        hostname: localhost        client:            register-with-eureka: false            fetch-registry: false        service-url:            defaultZone: http://${eureka.instance.hostname}:${server.port}/eureka/

1.1.3 主启动类

启动服务器端的类使用Spring Boot注解:

@SpringBootApplication@EnableEurekaServerpublic class EurekaServer7001_App {    public static void main(String[] args) {        SpringApplication.run(EurekaServer7001_App.class, args);    }}

2. Eureka客户端的配置

2.1 微服务Provider的客户端配置

Provider服务需要注册到Eureka服务中。同样在项目的pom文件中添加以下依赖:

org.springframework.cloud
spring-cloud-starter-eureka

完整的pom文件示例如下:

4.0.0
com.atguigu.springcloud
microservicecloud
0.0.1-SNAPSHOT
microservicecloud-provider-dept-8001
com.atguigu.springcloud
microservicecloud-api
${project.version}
org.springframework.cloud
spring-cloud-starter-eureka

2.1.1 YAML配置文件

服务提供者的配置文件(application.yml)内容如下:

server:    port: 8001mybatis:    config-location: classpath:mybatis/mybatis.cfg.xml    type-aliases-package: com.atguigu.springcloud.entities    mapper-locations: classpath:mybatis/mapper/**/*.xmlspring:    application:        name: microservicecloud-dept    datasource:        type: com.alibaba.druid.pool.DruidDataSource        driver-class-name: org.gjt.mm.mysql.Driver        url: jdbc:mysql://localhost:3306/cloudDB01        username: root        password: 123456        dbcp2:            min-idle: 5            initial-size: 5            max-total: 5            max-wait-millis: 200eureka:    client:        service-url:            defaultZone: http://localhost:7001/eureka/    instance:        instance-id: microservicecloud-dept8001    prefer-ip-address: true    info:        app.name: atguigu-microservicecloud        company.name: www.atguigu.com        build.artifactId: ${project.artifactId}        build.version: ${project.version}

2.1.2 主启动类

启动服务的Provider类:

@SpringBootApplication@EnableEurekaClientpublic class DeptProvider8001_App {    public static void main(String[] args) {        SpringApplication.run(DeptProvider8001_App.class, args);    }}

3. Eureka集群配置

为了实现Eureka的集群,我们需要配置多个注册中心并确保各服务能够正确 discoveries。

3.1 ect配置

在Eureka服务器端的配置文件中添加服务的 listen地址:

server:    port: 7001eureka:    instance:        hostname: eureka7001.com    client:        service-url:            defaultZone: http://${eureka.instance.hostname}:7001/eureka/

对于其他注册中心(如eureka7002.com和eureka7003.com),配置方式类似。

3.2 客户端配置

在客户端的配置文件中指定多个 registering address:

server:    port: 80spring:    application:        name: microservicecloud-dept    eureka:        client:            service-url:                defaultZone: http://eureka7001.com:7001/eureka/,http://eureka7002.com:7002/eureka/,http://eureka7003.com:7003/eureka/

3.3 访问验证

可以通过访问http://eureka7001.com:7001/或其他节点地址查看注册信息,确保服务注册和发现正常。


通过以上配置,可以实现Eureka服务的注册中心搭建及集群部署,方便各服务之间的功能调用和负载均衡。

转载地址:http://skojz.baihongyu.com/

你可能感兴趣的文章
mysql 判断表字段是否存在,然后修改
查看>>
MySQL 到底能不能放到 Docker 里跑?
查看>>
mysql 前缀索引 命令_11 | Mysql怎么给字符串字段加索引?
查看>>
MySQL 加锁处理分析
查看>>
mysql 协议的退出命令包及解析
查看>>
mysql 参数 innodb_flush_log_at_trx_commit
查看>>
mysql 取表中分组之后最新一条数据 分组最新数据 分组取最新数据 分组数据 获取每个分类的最新数据
查看>>
MySQL 命令和内置函数
查看>>
mysql 四种存储引擎
查看>>
MySQL 在并发场景下的问题及解决思路
查看>>
MySQL 基础架构
查看>>
MySQL 基础模块的面试题总结
查看>>
MySQL 备份 Xtrabackup
查看>>
mYSQL 外键约束
查看>>
mysql 多个表关联查询查询时间长的问题
查看>>
mySQL 多个表求多个count
查看>>
mysql 多字段删除重复数据,保留最小id数据
查看>>
MySQL 多表联合查询:UNION 和 JOIN 分析
查看>>
MySQL 大数据量快速插入方法和语句优化
查看>>
mysql 如何给SQL添加索引
查看>>