SpringCloud 环境搭建eureka+ribbon+feign,可运行实例

简单介绍一下eureka,ribbon,feign

eureka (服务注册与发现)分为client与service,每一个spring cloud的项目都需要 注册之后才能使用,服务器配置服务端,客户端配置客户端。

ribbon 是做负载均衡的,当一个请求来的时候,分发给其他的服务,可以是同一个服务器的相同应用的多个服务,保证了系统的稳定。

feign (声明式调用服务) 可以说非常重要的,最主要的特点是通过服务名调用服务(前提也要先注册)。

spring cloud 还有根据其他的组件,例如zuul做网关,配合ribbon,还有Hystrix——熔断器等可以做一个十分强大的分布式系统。我按着例子跑了一遍,发现spring cloud 使用真的很方便,但是最系统架构设计要求比较高,怎样才能让系统设计得更合理,还有很长一段路要走。接下来查看例子。

首先从git上拉下来几个项目:

eureka服务端:   https://gitee.com/zhoujie1/eureka-server.git

eureka客户端:   https://gitee.com/zhoujie1/eureka-client.git

ribbon: https://gitee.com/zhoujie1/ribbon.git

feign :  https://gitee.com/zhoujie1/feign.git

导入到IDEA中。

启动eureka服务端,输入地址与端口,出现下图,表示服务端启动

启动client,再次访问该地址

发现会多一个服务,此时服务就注册好了。接下来咱把ribbon与feign也加上,在加上之前,需要先将客户端打成jar包,放入目录,运行。并指定另一个端口:java -jar helloEurekaclient-1.0-SNAPSHOT.jar --server.port=8763

启动成功,如下图

加入ribbon,两个服务交替出现,如下图

加入feign,我的接口定义的/feign,同样是交替调用服务。

此时,查看eureka主页界面可以看到所有服务

 

 

整个流程是,feign通过服务名调用时,被ribbon拦截,按照次序分发给不同的服务。此时系统运行成功。

遇到的问题:

1.maven导入spring cloud项目后eureka不会正常显示,将导入的包删掉,重新导入。

2.ribbon写调用服务名的时候,需要大写。

3.不同的版本的spring cloud的版本不同,需要的可以去参考https://www.cnblogs.com/jtlgb/p/9204069.html,而且调用方式也不一样

根据以下2篇博客搭建的,还有些东西没有用上,后面再学习。

参考博客:

https://blog.csdn.net/qwssd/article/category/7406590

https://www.cnblogs.com/chry/category/1045074.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值