栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

chapter04:简单的Eureka搭建

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

chapter04:简单的Eureka搭建

大纲
  • 一、单机环境
    • 1.1 Eureka Server
      • 1. 导入依赖
      • 2. yml文件
      • 3. 启动类
    • 1.2 Eureka Cilent
      • 1. 导入依赖
      • 2. yml文件
      • 3. 启动类
    • 1.3 测试
  • 二、集群环境
    • 2.1 简介
    • 2.2 步骤
      • 1. 搭建集群
        • (1) 修改映射配置
        • (2) 修改yml文件
      • 2. 微服务注册到集群
  • 三、Eureka细节修改
    • 3.1 修改实例id
    • 3.2 访问显示IP
  • 四、Eureka自我保护机制
  • 五、总结

一、单机环境 1.1 Eureka Server 1. 导入依赖
        
        
            org.springframework.cloud
            spring-cloud-starter-netflix-eureka-server
            3.0.3
        
2. yml文件
server:
  port: 7001

eureka:
  instance:
    # eureka服务端的实例名称
    hostname: localhost
  client:
     # false表示不向注册中心注册自己
    register-with-eureka: false
    # false表示自己端就是注册中心,我的职责就是维护服务器的实例,不需要去检索服务
    fetch-registry: false
    service-url:
      # 设置与eureka sever交互的地址与查询服务、注册服务
      defaultZone : http://${eureka.instance.hostname}:${server.port}/eureka/
3. 启动类

添加@EnableEurekaServer注解

1.2 Eureka Cilent 1. 导入依赖
        
        
            org.springframework.cloud
            spring-cloud-starter-netflix-eureka-client
        
2. yml文件
server:
  port: 80

spring:
  application:
    # 微服务的名称
    name: cloud-consumer-order

eureka:
  client:
    # true表示向注册中心注册自己,默认为true
    register-with-eureka: true
    # 是否从EurekaServer抓取已有的注册信息,默认为true。
    # 单节点无所谓,集群必须设置true才能够配合ribbon使用负载均衡
    fetch-registry: true
    service-url:
      # 设置与eureka sever交互的地址与查询服务、注册服务
      defaultZone : http://localhost:7001/eureka/
3. 启动类

添加@EnableEurekaClient

1.3 测试

浏览器输入http://localhost:7001/;
发现 cloud-consumer-order已经注册到服务中心里面了。

二、集群环境 2.1 简介

目的:避免单个EurekaServer出现故障,导致整个服务不可用
实现:简单来说,我们就是对外就是一个大的整Eureka,里面就包含了好几台:比如说 7001,7002…。 而里面的服务就相互注册,互相守望(你注册我,我注册你)。

2.2 步骤

现在就创建 7001 与 7002。

1. 搭建集群 (1) 修改映射配置

找到 host文件:C:WindowsSystem32driversetc ,修改host映射配置,直接写入

127.0.0.1  eureka7001.com
127.0.0.1  eureka7002.com

注 :mac执行命令 sudo su 切换root账号,然后 vim /etc/hosts进入编辑页面,然后按字母i就可以编辑了,编辑完成后按esc,然后:wq就行了,最后su - 普通账户

注:拒绝访问解决办法,点开文件属性,安全,设置Users,添加修改写入权限

(2) 修改yml文件

主要是修改hostname, defaultZone
三台的话defaultzone内容逗号分离,
service-url: defaultZoo url1,url2

  1. 修改7001
server:
  port: 7001

eureka:
  instance:
    # eureka服务端的实例名称 对应host的修改
    hostname: eureka7001.com
  client:
    register-with-eureka: false
    fetch-registry: false
    service-url:
      # 设置与eureka sever交互的地址与查询服务、注册服务
      # 向 http://eureka7002.com:7002/eureka/ 注册
      defaultZone : http://eureka7002.com:7002/eureka/
  1. 修改7002
server:
  port: 7002

eureka:
  instance:
    # eureka服务端的实例名称
    hostname: eureka7002.com
  client:
    register-with-eureka: false
    fetch-registry: false
    service-url:
      # 设置与eureka sever交互的地址与查询服务、注册服务
      # 向 http://eureka7001.com:7001/eureka/ 注册
      defaultZone : http://eureka7001.com:7001/eureka/

重启7001与7001,浏览器输入:http://eureka7002.com:7002/,http://eureka7001.com:7001/

2. 微服务注册到集群

修改微服务的 defalutZone


三、Eureka细节修改

导入 spring-boot-starter-actuator依赖,这是程序的监控系统,可以实现健康检查

3.1 修改实例id

3.2 访问显示IP


四、Eureka自我保护机制

五、总结

Eureka包含两个组件: Eureka Server和Eureka Client。

Eureka Server启动完成之后,微服务节点向注册中心进行注册。如果默认时间90s没有收到来自Client的心跳,会这个服务节点移除。
Eureka Client:内置的、使用轮询(round-robin)负载算法的负载均衡器。启动后,向Eureka Server发送心跳,默认周期为30秒。

key存储服务名,value存放服务地址。

上一章:chapter03:搭建子模块

下一章:chapter05:简单搭建服务提供方集群

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/572468.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号