我正在努力注册我的节点应用程序,使用Netflix的Eureka,经过Google搜索后,我仍在寻找解决方案。我能解决的最大问题是我们有Prana但我遇到的问题仍然在issue list of Prana(我想这意味着我的REST模板无法发现这个应用程序)。
Sidecar,是另一个建议的解决方案,我没有得到任何回应。除了这两个,我找到了一个节点模块Eureka-Node-client,但它们都没有达到我的目的。
答案 0 :(得分:9)
您可以创建一个Sidecar
应用程序,就像创建任何spring-boot
应用程序一样:
@EnableSidecar
@SpringBootApplication
public class SideCarApplication {
public static void main(final String[] args) {
SpringApplication.run(SideCarApplication.class, args);
}
}
重要的是你必须配置它才能正确注册你的实际服务。您的application.yml
应如下所示:
server:
port: 9999 -- the port your spring-boot sidecar is running
spring:
application:
name: nodeapplication -- the name will be your id in eureka
sidecar:
port: 8000 -- the node applications port
health-uri: http://localhost:8000/health.json -- the exposed health eindpoint of your node application
请务必注意,healthpoint应返回UP
,以便您的服务状态在eureka中正确无误。返回的json用于健康的服务:
{
"status":"UP"
}
如果您在设置spring-boot
应用时遇到问题,请使用https://start.spring.io/配置项目。可悲的是,没有一个边车选项可以打勾,但你会得到这个想法。您可以从STS
(Spring Tool Suite)执行相同操作。
Sidecar
的maven依赖关系(以spring-cloud为父):
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-netflix-sidecar</artifactId>
</dependency>
答案 1 :(得分:0)
Checkout eureka-js-client,可直接在节点应用程序中使用,以便向eureka注册。
答案 2 :(得分:-1)
我使用npm generator-express-sidecar来生成一个包含所有开箱即用配置的gradlew sidecar项目 请参阅下面分享的参考链接 https://www.npmjs.com/package/generator-express-sidecar