小编Tho*_*lan的帖子

Spring Cloud - Registry Service端口定制

我想用Spring Cloud定制Eureka端口.使用下面的默认端口,服务注册表看起来正确(在提供的GUI中)

spring:
  application:
    name: services-registry
server:
  port: 8761

eureka:
  instance:
    hostname: localhost
    nonSecurePort: ${server.port}
  client:
    register-with-eureka: true
    fetch-registry: false
    service-url:
      default-zone: http://${eureka.instance.hostname}:${server.port}/eureka/
Run Code Online (Sandbox Code Playgroud)

但是,如果我只是将server.port更改为8787,那么任何服务都无法注册,甚至服务注册表本身也无法注册.

2017-01-09 16:18:21.584  WARN 17496 --- [nfoReplicator-0] c.n.d.s.t.d.RetryableEurekaHttpClient    : Request execution failure
2017-01-09 16:18:21.584  WARN 17496 --- [nfoReplicator-0] com.netflix.discovery.DiscoveryClient    : DiscoveryClient_SERVICES-REGISTRY/xxx.org:services-registry:8787 - registration failed Cannot execute request on any known server

com.netflix.discovery.shared.transport.TransportException: Cannot execute request on any known server
...
2017-01-09 16:13:33.299  WARN 17496 --- [nfoReplicator-0] c.n.discovery.InstanceInfoReplicator     : There was a problem with the instance info replicator …
Run Code Online (Sandbox Code Playgroud)

spring-cloud netflix-eureka

6
推荐指数
1
解决办法
1万
查看次数

针对多个服务版本的Spring Cloud发现

我问自己一个问题而没有找到答案.也许有人在这里会有想法;-)在Spring Cloud中使用RestTemplate和Feign客户端的服务注册表(Eureka),我有相同服务的不同构建版本.构建版本通过Actuator的/ info端点进行记录.

{
"build": {
"version": "0.0.1-SNAPSHOT",
"artifact": "service-a",
"name": "service-a",
"group": "com.mycompany",
"time": 1487253409000
}
}
...
{
"build": {
"version": "0.0.2-SNAPSHOT",
"artifact": "service-a",
"name": "service-a",
"group": "com.mycompany",
"time": 1487325340000
}
}
Run Code Online (Sandbox Code Playgroud)

在客户的电话中有任何意思要求特定的构建版本吗?我应该使用网关的路由过滤器来管理吗?但是我觉得版本检测仍然是一个问题......

好吧,任何建议都表示赞赏.

spring spring-cloud netflix-eureka spring-cloud-feign

5
推荐指数
1
解决办法
2212
查看次数