我在春季有3个微服务:
和另一个用NodeJs编写的用Eureka-js-client编写的微服务。
Spring Eureka仪表板列出了所有这些

到目前为止,一切看起来都还好,但问题是当我试图在eureka服务器中读取我的node-microservice实例时。通过这种方式成功地找到了employee实例。
List<ServiceInstance> instances=discoveryClient.getInstances("employee-producer");
ServiceInstance serviceInstance=instances.get(0);我找不到我的节点微服务
List<ServiceInstance> instances=discoveryClient.getInstances("node-microservice");
ServiceInstance serviceInstance=instances.get(0);通过调试,结果是

node-microservice
const Eureka = require('eureka-js-client').Eureka;
const express = require('express');
const server = express();
server.use(express.json());
server.use(function(req, res, next) {
res.header("Access-Control-Allow-Origin", "*");
res.header("Access-Control-Allow-Headers", "Origin, X-Requested-With, Content-Type, Accept");
next();
});
server.listen(3001);
server.get('/', function (req, res) {
res.send("CIaooo");
});
// example configuration
const client = new Eureka({
// application instance information
instance: {
app: 'node-microservice',
hostName: 'localhost',
ipAddr: '127.0.0.1',
port: {
'$': 3001,
'@enabled': 'true',
},
vipAddress: 'jq.test.something.com',
statusPageUrl: 'http://localhost:3001/info',
dataCenterInfo: {
'@class': 'com.netflix.appinfo.InstanceInfo$DefaultDataCenterInfo',
name: 'MyOwn',
}
},
eureka: {
// eureka server host / port
host: 'localhost',
port: 8761,
servicePath: '/eureka/apps/'
},
});
client.logger.level('debug');
client.start(function(error){
console.log(error || 'complete')});另一个奇怪的事情是,从spring调试开始,我就可以列出服务,其中还列出了节点-microservice。

我的密码怎么了?
发布于 2018-06-21 12:33:13
问题是,在实例对象中,我没有编写instanceId (在任何地方都没有提到)。我在代码爬行中找到了这个解决方案,而在另一个项目中也有这个字段。
instance: {
app: 'node-microservice',
instanceId: 'nodemicroservice',
hostName: 'localhost',
ipAddr: '127.0.0.1',
port: {
'$': 3001,
'@enabled': 'true',
},
vipAddress: 'nodemicroservice',
statusPageUrl: 'http://localhost:3001/info',
dataCenterInfo: {
'@class': 'com.netflix.appinfo.InstanceInfo$DefaultDataCenterInfo',
name: 'MyOwn',
},
registerWithEureka: true,
fetchRegistry: true
},https://stackoverflow.com/questions/50965591
复制相似问题