我正在使用微服务和netflix oss。我正在使用Eureka进行服务注册和发现。我正在尝试不同的选项来了解Eureka服务器的行为。对于下面提到的情况,我仍然有一些疑问。
我有几个微服务,Service-A和Service-B。我还有两个Eureka服务器实例即。 Eureka-1(港口:8761)和Eureka-2(港口:8762)。我只用Eureka-1注册了这两项服务。此外,service-A使用eureka服务实例名称调用Service-B。
当我运行Service-A,Service-B,Eureka-1和Eureka-2服务时,我能够按照预期命中服务-A内部命中Service-B。但是,当我将Eureka-1实例关闭并命中service-A时,它仍然能够使用eureka服务实例名称在内部命中Service-B。我的问题是Eureka-2实例了解了在Eureka-1实例中注册的服务。如果是,Eureka服务器实例之间如何以及何时进行通信?请帮我理解这一点。
答案 0 :(得分:1)
Netflix网站(https://github.com/Netflix/eureka/wiki/Understanding-Eureka-Peer-to-Peer-Communication)上有一篇很好的文章,解释了eureka点对点的发生方式。
如果您同时指向eureka-1和eureka-2(即yml文件中的eureka客户端定义),那么当您注册到eureka-1时,eureka-2将从eureka-1获取可用服务列表。
因此,一旦配对,eureka-2将与eureka-2具有相同的列表,并且发现将起作用。
你可能应该在你的问题中加入你的eureka-1和2配置,以便我们有更多细节