搭建一个SpringCloud项目,通过Feign请求Eureka注册中心其它服务实例,但是无论如何服务就是不去Eureka上注册!!!后来经过数小心的排查,最终发现是Eureka—Client依赖添加错误造成的,这个问题解决超时。虽然使用SpringCloud和SpringBoot高集成依赖架构给我们带来了很多方便,但由于内部版本复杂,我们在日常使用中一定要看仔细了再用,否则会出现各种莫名其妙的问题,拖慢开发进度。


Eureka-Client依赖李鬼还是李逵?

李鬼:

<dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-netflix-eureka-client</artifactId>
</dependency>

李逵:

 <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
 </dependency>

恶心的是这俩玩意儿还能同时存在!!! 放一张细节图: 更换依赖后问题解决!服务Eureka注册成功且实现了通过实例名称调用。


Tips: 在使用spring-cloud-netflix-eureka-client无法注册Eureka上后,添加了Eureka-Server的依赖后注册中心竟然神奇的出现了我们要注册的服务!!!当我要通过Feign进行服务间通信时问题又来了。

com.netflix.client.ClientException: Load balancer does not have available server for client: helloservice

他娘的什么鬼,我的服务明明都在Eureka上注册,为什么不能够实现服务间通信? 我的Eureka-Server依赖如下:

<dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-netflix-eureka-server</artifactId>
</dependency>

而真正的Eureka-Server依赖如下:

<dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-netflix-eureka-server</artifactId>
</dependency>

使用错的东西也能注册成功,但是无法实现通信,问题有待探讨。 Pom依赖是特别细节的东西,大家在实际生产中一定要注意了。