美文网首页spring boot
spring boot 集成eureka的几个坑

spring boot 集成eureka的几个坑

作者: 爱余星痕 | 来源:发表于2019-05-30 08:28 被阅读60次

    本人最近在spring boot中集成了eureka,遇到了下面几个坑,并记录解决办法:

    • 注册的服务都是机器名,而非IP.
      解决办法如下:
    eureka:
      instance:
        hostname: localhost
        # 使用IP注册
        preferIpAddress: true
    

    加入preferIpAddress配置即可

    • 应用名含contextPath,无法在代码上获取这个怎么办??
      解决办法如下:
    1. 自定义属性配置
    eureka:
      instance:
        hostname: localhost
        # 使用IP注册
        preferIpAddress: true
        metadata-map:
              contextPath: ${server.context-path:}
    
    1. 代码中获取自定义属性
    ServiceInstance serviceInstance=loadBalancerClient.choose("EBPM");
            sb.append( "http://"+serviceInstance.getHost()+":"+serviceInstance.getPort()+ serviceInstance.getMetadata().get("contextPath") );
        
    
    • 通过spring.application.name获取不到对应的配置
      该问题其实是大小写问题,如果spring.application.name配的是小写,请在client调用时转成大写再调用.
      至此,遇到的坑已填完.

    相关文章

      网友评论

        本文标题:spring boot 集成eureka的几个坑

        本文链接:https://www.haomeiwen.com/subject/fhgptctx.html