小白入门springcloud组件概念

微服务其实就是讲原来一个大服务拆分成多个小服务分成多个应用,比如原来用户积分,跟用户订单在一个java项目中,后来代码膨胀不好维护了,便拆了两个java项目。原来一个项目调用是直接用方法调用,现在是两个不同的jar包了不能直接调用了,要调用有两种实现方法,意思是RPC调用如dubbo,一种是http调用如springcloud。先讲下springcloud。

要调用对方至少得知道对方地址是什么,所以有Eureka注册中心,每个jar报将自己有哪些服务,以及地址是什么注册到Eureka,jar包通过读取eureka的信息知道对方调用地址。
有了地址就要解决怎么调用,所以有了feign,feign是通过注解形式调用对方网址的封装了resttemplete,一个项目搞到微服务程度一般都会集群,所谓的集群就是一个jar报部署多个,就算挂掉一个还有其他jar可以用,所以要搞负载均衡调用,就是每次调用均匀地分布到这些jar上,所以feign内置了ribbon,ribbon就是用来负载均衡的。对后端来说有eureka和feign就能搞起微服务了,但是实际项目是前端先发起请求,后端要集中处理,统计前端发起的调用比如日志或者权限验证,这时候后端会加上路由zuul,前端调用zuul,有zuul在进行分发。处理那些jar报出异常了,比如挂掉了,就需要用到Hystrix组件了,可以快速响应错误,不至于一直卡主直到超时。

总结:调用流程是 前端–>zuul–>消费者–>feign–>生产者,当然后端的这些组件都要注册信息到eureka上。 可以看到有两次分发,前端到后端是通过zuul分发的,后端与后端是通过feign进行分发的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值