zoukankan      html  css  js  c++  java
  • SpringCloud 踩坑之 注册中心绑定端口一直是8080

    今天在启动注册中心服务时,突然端口一直是8080,找了好久一直没找到原因,先看看我有问题的配置

    spring:
      application:
        name: eureka-server
      profiles: dev
    server:
    #  port: ${port:8761}
      port: 8761
    eureka:
      instance:
        # 实例id
        instance-id: ${spring.application.name}-${port:8761}-${random.value}
        # 服务名称,不配置的话取spring.application.name
        appname: eureka-server
        # 主机名,不配置的话根据操作系统的主机名来获取,
        # 单机配置集群一定要配置,多台机器不用配置,默认会从系统中取
        hostname: ${HOSTNAME}
        # 发送心跳的间隔时间,默认30
        lease-renewal-interval-in-seconds: 5
        # 等待心跳包的时间上限,默认90
        lease-expiration-duration-in-seconds: 10
        # 在配置集群eureka时不能设置为true,默认为false,若为ture,eureka分片会显示不可用--->unavailable-replicas
        prefer-ip-address: false
      client:
        # 从是否从注册中心中获取注册信息,集群模式下,配置为true
        fetch-registry: true
        # 是否将自身注册到注册中心,集群模式下配置为true
        register-with-eureka: true
        service-url:
          # 与服务端通信的地址
          defaultZone: ${EUREKA_SERVER_URL}/eureka/
        # 将健康检查委托给actuator维护,默认为true
        healthcheck:
          enabled: true
      server:
    #     是否开启保护模式,开发环境建议为false,默认为true
        enable-self-preservation: false
        #当eureka服务器启动时获取其他服务器的注册信息失败时,会再次尝试获取,期间需要等待的时间,默认为30 * 1000毫秒
        registry-sync-retry-wait-ms: 500
        eviction-interval-timer-in-ms: 30000
        # 集群里eureka节点的变化信息更新的时间间隔,单位为毫秒,默认为10 * 60 * 1000
        peer-eureka-nodes-update-interval-ms: 30000
    
    

    网上的解决方案都不适用,大概可以总结为以下几种:

    1. 检查配置文件是否生效,如:查看target目录下是否有application.yml文件,查看配置文件是否被编译
    2. 查看远程配置中心或者启动参数是否带了8080端口,因为这些配置的优先级高于本地的yml文件
    3. 查看服务启动的具体报错信息,这个需要具体分析,我启动过程中,并没有出现错误

    最后经过多次实验,找到原因如下:

    我的配置中有这么一行:

    spring:
      profiles: dev
    

    问题就出在这里(在查问题的过程中看到一个哥们也是这么配置的,文章链接如下:https://blog.csdn.net/windkiller_XiaoJian/article/details/81461999)

    这种配置是有问题的,我的本地是想要激活dev的配置,正确的配置如下:

    spring:
      profiles:
        active: dev
    

    修正后启动服务,端口变为正常8761,具体原因没找到,有懂的大神留言说一声哈~

    希望能跟大家多多交流,望大佬不吝赐教

  • 相关阅读:
    线程间的通信 与 线程池
    线程同步
    静态代理模式
    多线程状态
    线程、进程、多线程
    Java面向对象之泛型
    ConstraintLayout 用法
    搞NDK开发
    Linux基础命令【记录】
    c# 的一些基本操作或属性
  • 原文地址:https://www.cnblogs.com/daimzh/p/12854419.html
Copyright © 2011-2022 走看看