如何注册spring5个应用到eureka客户端
How to register spring 5 application to eureka client
感谢您的回复。
我不知道是什么将 spring(5) 应用程序注册为尤里卡客户端。
我的应用程序只是读取数据。
我之前找到了该示例代码,但我无法应用某些代码。
我不知道在启动我的应用程序时如何执行尤里卡客户端代码。
找到代码
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() );
我认为我的应用程序在启动时在 MainController 中执行 url“/”。
所以,我只是把代码写在 MainController 的“/”GetMapping 方法中。
但是我得到了一个错误。
无法访问 javax.inject.Provider class 文件 javax.inject.Provider 未找到。
如何编写注册为尤里卡客户端的代码以及如何使用该代码...
请帮助小辈!谢谢!
您为什么不尝试使用配置文件?
示例:application.properties 或 yml?
尤里卡服务器:
eureka:
instance:
hostname: localhost
port: 9091
client:
registerWithEureka: false
fetchRegistry: false
serviceUrl:
defaultZone: http://${eureka.instance.hostname}:${server.port}/eureka/
server:
waitTimeInMsWhenSyncEmpty: 3000
enableSelfPreservation: false
微服务客户端:
eureka:
instance:
hostname: localhost
port: 9091
client:
registerWithEureka: true
fetchRegistry: false
serviceUrl:
defaultZone: http://${eureka.instance.hostname}:${eureka.instance.port}/eureka/
server:
wait-time-in-ms-when-sync-empty: 3000
感谢您的回复。 我不知道是什么将 spring(5) 应用程序注册为尤里卡客户端。 我的应用程序只是读取数据。 我之前找到了该示例代码,但我无法应用某些代码。 我不知道在启动我的应用程序时如何执行尤里卡客户端代码。
找到代码
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() );
我认为我的应用程序在启动时在 MainController 中执行 url“/”。 所以,我只是把代码写在 MainController 的“/”GetMapping 方法中。 但是我得到了一个错误。 无法访问 javax.inject.Provider class 文件 javax.inject.Provider 未找到。
如何编写注册为尤里卡客户端的代码以及如何使用该代码... 请帮助小辈!谢谢!
您为什么不尝试使用配置文件? 示例:application.properties 或 yml?
尤里卡服务器:
eureka:
instance:
hostname: localhost
port: 9091
client:
registerWithEureka: false
fetchRegistry: false
serviceUrl:
defaultZone: http://${eureka.instance.hostname}:${server.port}/eureka/
server:
waitTimeInMsWhenSyncEmpty: 3000
enableSelfPreservation: false
微服务客户端:
eureka:
instance:
hostname: localhost
port: 9091
client:
registerWithEureka: true
fetchRegistry: false
serviceUrl:
defaultZone: http://${eureka.instance.hostname}:${eureka.instance.port}/eureka/
server:
wait-time-in-ms-when-sync-empty: 3000