我懷疑這是一個問題,任何人都可以幫忙檢查一下嗎?一旦關閉,Spring雲端服務器無法註銷nodeJS服務
在我的Sidecar應用程序,我有application.yml:
server:
port: 5678
spring:
application:
name: nodeservice
sidecar:
port: ${nodeServer.instance.port:3000}
health-uri: http://localhost:${nodeServer.instance.port:3000}/app/health.json
eureka:
instance:
hostname: ${host.instance.name:localhost}
leaseRenewalIntervalInSeconds: 5 #default is 30, recommended to keep default
metadataMap:
instanceId: ${spring.application.name}:${spring.application.instance_id:${random.value}}
client:
serviceUrl:
defaultZone: http://localhost:8761/eureka/
在我的主彈簧配置應用程序,我有:
String url_node = "";
try {
InstanceInfo instance = discoveryClient.getNextServerFromEureka("nodeservice", false);
// InstanceInfo instance = discoveryClient.getNextServerFromEureka("foo", false);
url_node = instance.getHomePageUrl();
} catch (Exception e) {
}
現在我開始我的服務器的NodeJS,我在春天應用:
網址nodeService是:http://SJCC02MT0NUFD58.local:3000/
這是PERF等,但在我關閉我的nodeJS服務器後, http://localhost:3000/app/health.json url完全失效,但在主要的java spring應用程序中,我仍然看到相同的輸出。
因此,即使NodeJS服務不再可用,尤里卡仍然記得在內存中。
我的配置有什麼問題嗎?
另一個問題是爲什麼春季發現的網址是http://SJCC02MT0NUFD58.local:3000/而不是http://localhost:3000?我已經將Eureka.server.instance.host配置爲localhost。
感謝
謝謝@spencergibb,在你看來,這也是真的,nodeServer的URL,http://SJCC02MT0NUFD58.local:3000 /,即使我已經把localhost放在sideCar配置中也是需要的嗎?這隻適用於mac嗎? – user3006967
默認情況下,Spring雲使用主機名。 – spencergibb