当前位置: 首页 > 知识库问答 >
问题:

没有Spring-boot的Eureka服务发现

须新
2023-03-14

共有1个答案

文德曜
2023-03-14

我就是这么做的。基本上这比我预想的要容易得多。以下内容抄袭自Netflix eureka项目。

  DiscoveryManager.getInstance().initComponent(new MyDataCenterInstanceConfig(), new DefaultEurekaClientConfig());

  String vipAddress = "MY-SERVICE";

    InstanceInfo nextServerInfo = null;
    try {
        nextServerInfo = DiscoveryManager.getInstance()
                .getEurekaClient()
                .getNextServerFromEureka(vipAddress, false);
    } catch (Exception e) {
        System.err.println("Cannot get an instance of example service to talk to from eureka");
        System.exit(-1);
    }

    System.out.println("Found an instance of example service to talk to from eureka: "
            + nextServerInfo.getVIPAddress() + ":" + nextServerInfo.getPort());

    System.out.println("healthCheckUrl: " + nextServerInfo.getHealthCheckUrl());
    System.out.println("override: " + nextServerInfo.getOverriddenStatus());

    System.out.println("Server Host Name "+ nextServerInfo.getHostName() + " at port " + nextServerInfo.getPort() );

此外,还必须将配置文件添加到类路径中。Eureka客户端使用此文件读取关于Eureka服务器的信息。

eureka.preferSameZone=true
eureka.shouldUseDns=false
eureka.serviceUrl.default=http://localhost:8761/eureka/
eureka.decoderName=JacksonJson

您还必须提供eureka客户端作为依赖项。Eureka1支持JDK7,尽管它的一部分是用JDK8构建的。然而,我不得不提供“archaius-core”和“serous-core”的旧版本,以使它与JDK7一起运行。

    <dependency>
        <groupId>com.netflix.archaius</groupId>
        <artifactId>archaius-core</artifactId>
        <version>0.7.3</version>
    </dependency>
    <dependency>
        <groupId>com.netflix.servo</groupId>
        <artifactId>servo-core</artifactId>
        <version>0.10.0</version>
    </dependency>
 类似资料:
  • 使用Spring Boot V1.5.x,可以将单个服务double用作Spring Boot Admin服务器和Eureka Discovery服务器。对于Spring Boot2.x,Spring Boot Admin Server似乎使用Spring reactive API(webflux,Netty Server等),而Netflix Eureka Discovery Server仍然使

  • 我第一次尝试尤里卡云注册表,并寻求您的帮助 与服务器端口系列有关吗?工作的那个端口配置为8880,而我遇到麻烦的那个端口配置为9000。请让我知道你的想法 工作的eurekaserver-https://github.com/vijayakumar-psg587/cloudconfigeurekaserver.git

  • iam使用spring boot gateway与eureka服务器,但当我试图从gateway访问某个api时,它不使用gateway路由的路径,而是使用服务名 但如果我将“book”替换为“books”(服务名),它就会起作用

  • 我有一个简单的spring boot应用程序,它从JMS队列中获取消息,并将一些数据保存到日志文件中,但不需要web服务器。有没有办法在没有web服务器的情况下启动spring boot?

  • 我正在尝试运行Spring Boot(使用Spring Cloud)+Eureka服务器+Hystrix仪表盘和Turbine stream,但我遇到了一个问题,到目前为止我找不到任何解决方案。我使用Spring Boot 1.2.1.Release和Spring Cloud 1.0.0.rc2。以下是我的资料: 第一个实例正在运行Eureka服务器和Hystrix仪表板: 您可以在这里找到该实例

  • 如何包含Eureka服务器 要在项目中包含Eureka服务器,请使用组org.springframework.cloud和工件id spring-cloud-starter-eureka-server的启动器。有关 使用当前的Spring Cloud发布列表设置构建系统的详细信息,请参阅Spring Cloud项目页面。 如何运行Eureka服务器 示例eureka服务器; @SpringBoot