eureka

在启动类上家@EnableEurekaServer注解表示这是eureka注册中心,用于被系统识别

运行机制 

注册 客户端会反复链接服务器进行注册,直到注册成功

拉取 每三十秒拉取一次注册表,来刷新注册表,eureka启动后启动的服务不会时时注册到eureka之中,需要等到拉取的时候更新到注册表中

心跳 客户端会每隔30秒发送一次心跳,如果服务器连续三次收不到一个服务的心跳,就会删除这个服务 

自我保护模式 网络不稳定,网络中断,15分钟内注册表中的85%的服务器出现心跳异常,就会进入自我保护模式,这种情况下,所有服务都不删除,直到网络恢复,保护解除

Connect to localhost:8761 timed out这个错误时由于eureka未链接到8761端口造成的,8761是eureka默认链接端口,如果eureka配置中没有对其指定对应路径时,就会默认路径为8761,会不断的尝试链接

 这是默认url的相关源码

解决方法就是在eureka的配置文件中加入defaultZone,这个配置会覆盖默认的url

eureka:
  client:
    service-url:
      defaultZone: http://eureka1:2001/eureka

在eureka客户端配置网卡

uereka服务bootstrap.yml添加配置

此配置只有在bootstrap.yml中有效
spring:
  cloud:
    inetutils:
      ignored-interfaces: #忽略的网卡
        - VM.*
      preferred-networks: #要使用的网卡网段
        - 192\.168\.99\..+    .+正则表达式任意值 \是转译
        - xxx\.xxx\.xxx\.x
  client:
    register-with-eureka: false #表示是否向自己注册 否
    fetch-registry: false  #是否从注册表里拉取信息 否

注册ip地址,而不注册主机名,直接使用ip(注册主机名访问时还要dns转译)

修改application.yml(没有application.yml文件,可以修改配置中心的c对应的onfig文件 )

eureka:
  instance:
    prefer-ip-address: true
    instance-id: ${spring.cloud.client.ipAddress}:${spring.application.name}
                                                  :${server.port}:@project.version@


instance-id不加也不影响,这个作用就是让注册表里显示的也是ip
经由上面的代码已经可以注册ip而不注册主机名

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值