如何通过Spring Cloud Zuul网关调用服务?

基于Spring Cloud框架,我希望搭建一个分布式服务。

第一个版本是:所有微服务应用都注册到Eureka Server中心,在客户端Web应用使用Ribbon或Feign请求Eureka Server中心实现服务调用和负载均衡。

第二个版本是:加入Zuul作为服务网关,Zuul从Eureka Server中心获取所有微服务应用实例地址。所有客户端的调用请求都通过Zuul网关实现,同时,Zuul可以实现负载均衡,授权,监控等等功能。

我的问题是,在使用了Zuul作为服务网关的话,客户端Web应用对于微服务的调用请求该如何发起?还是使用Ribbon或Feign吗?

如果是,那么该Web应用请求的地址应该是Zuul网关所在的URL地址,而不是之前的Eureka Server中心。这样该如何配置呢?如果不是,那么在客户端Web应用中该如何通过Zuul网关调用服务呢?

希望有了解Spring Cloud的大神指点一下。敬谢~

阅读 15.9k
3 个回答

1、客户端直接用http请求就可以了呀,就Spring Cloud而言Ribbon或Feign这个是微服务内部调用框架。
2、客户端的请求地址就是网关的地址。
3、具体配置可以参考Spring Cloud

新手上路,请多包涵

zuul会根据服务名称 在eureka sever上寻找到具体的服务地址 进行调用,zuul里集成了ribbon,所以通过zuul调用底层就相当于通过ribbon

新手上路,请多包涵

我也遇到这个问题,但我尝试用feign去调用zuul没成功

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题