我对 Netflix Eureka 和 SpringBoot 还是很陌生。我构建了一个非常简单的 Eureka 服务器和客户端,以了解它们如何在发现方面取得进展。当我在访问 localhost:8761/ 时看到 UI 时,Eureka 服务器会正常加载自身
我正在使用 Eclipse 的 Tomcat 运行这两个实例。
我构建的 Eureka 客户端没有代码,因为它只运行 SpringBoot 应用程序,并带有适当的注释。关于 Eureka 服务器的相同内容。
当我运行客户端时,运行服务器后,我得到以下堆栈。我在网上跑了一些解释,但我没有找到任何解释。你知道是什么导致了这些 JSONObject 异常吗?
服务器端堆栈: http: //pastebin.ca/2968955
客户端堆栈: http: //pastebin.ca/2968957
这是我拥有的代码:
尤里卡服务器.java:
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.netflix.eureka.server.EnableEurekaServer;
@SpringBootApplication
@EnableEurekaServer
public class EurekaServer {
public static void main( String[] args ) {
SpringApplication.run(EurekaServer.class, args);
}
}
EurekaServer 的 application.yml :
spring:
application:
name: EurekaServer
server:
port: 8761
eureka:
instance:
hostname: localhost
client:
registerWithEureka: false
festRegistry: false
serviceUrl:
defaultZone: http://${eureka.instance.hostname}:${server.port}/eureka/
EurekaClientApp.java:
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.netflix.eureka.EnableEurekaClient;
import org.springframework.web.bind.annotation.RestController;
@SpringBootApplication
@EnableEurekaClient
@RestController
public class EurekaClientApp {
public static void main(String[] args) {
SpringApplication.run(EurekaClientApp.class, args);
}
}
EurekaClient 的 Application.yml :
spring:
application:
name: EurekaClient
eureka:
client:
serviceUrl:
defaultZone: http://localhost:8761/eureka/
registerWithEureka: true
fetchRegistry: false
instance:
leaseRenewalIntervalInSeconds: 10
metadataMap:
instanceId: ${spring.application.name}:${spring.application.instance_id:${random.value}}
server:
port: 8188
eureka-client.properties:
eureka.port=8188
eureka.vipAddress=productservice.mydomain.net
eureka.preferSameZone=true
eureka.shouldUseDns=false
eureka.availabilityZones=default
eureka.serviceUrl.defaultZone=http://localhost:8761/eureka/