SpringCloud:微服务概念
JAVA烂猪皮
共 3959字,需浏览 8分钟
· 2023-08-01
-
容易测试:本地就可以起完整的系统,不需要外部依赖。 -
容易开发:我们只需引入依赖,选择框架便可快速开发。 -
易于部署:单体架构部署也较简单,直接打包即可。 -
易于水平伸缩:这里的收缩时指当我们需要多个服务器时也比较方便
-
代码膨胀,难以维护:代码越来越多,开发人员也就越来越多,一旦出现bug,定位、修复成本很高,而且人员太多,代码都放在一起,容易引起冲突,且由于业务集中在一起,业务复杂,很难全局把握,改一个bug可能会再多出两个bug。 -
构建、部署成本大:项目太大,构建和部署就会非常慢,效率低下。 -
上手困难:互联网企业人员更迭快,代码过于集中,导致业务非常复杂,新人想要上手变得非常困难。 -
技术创新困难:代码过于集中,我们很难使用到新技术,因为改动实在太大,容易出现问题。 -
可扩展性差:这里的可扩展性是指因为项目都必须部署在一台服务器中,那项目所要的资源会越来越大,这样我们只能扩展硬件(集群可以分散压力,但是单个应用所要的资源还是不能少的)。
-
微服务是由一系列的小服务共同组成的。 -
每个微服务都有自己独立的进程。 -
每个服务都是独立的业务开发,单一原则 -
每个服务都能独立的部署(一般部署在容器中)。 -
微服务之间通过轻量级通信机制进行通信 -
分布式的管理。
![](https://filescdn.proginn.com/429d5db14880565cafa3ee3176f65064/02998616011539cd3b6e6639d428b5a0.webp)
-
客户端访问服务:这个上面架构图中已经给出,使用API Gateway。 -
服务通信:服务与服务之间的通信有两种方式,同步与异步:
-
服务治理:为了服务的高可用,微服务一般都有多个拷贝,做负载均衡,而这个时候就必须知道服务的状态,一个服务随时有可能下线,下线之后后续有可能重新启动,这些都需要我们一个服务治理功能,也即是服务的注册与发现。
![](https://filescdn.proginn.com/b898dc5d7a411f0478d5d90f8edbb520/2b3d9b511bce724613a6bad5091d5c8f.webp)
-
重试机制 -
熔断机制 -
降级机制 -
限流机制
剩下的就不会给大家一展出来了,以上资料按照一下操作即可获得
——将文章进行转发和评论,关注公众号【Java烤猪皮】,关注后继续后台回复领取口令“ 666 ”即可免费领文章取中所提供的资料。
![](https://filescdn.proginn.com/c812c0bc6d33e2ac6941784ec0d6f394/8d303b9501cb7c02076377ffaefef452.webp)
腾讯、阿里、滴滴后台试题汇集总结 — (含答案)
面试:史上最全多线程序面试题!
最新阿里内推Java后端试题
JVM难学?那是因为你没有真正看完整这篇文章
![](https://filescdn.proginn.com/bad0c4443a41b83773780802cf2cd175/6f3879462a3cc59341ed3c5771ce2b92.webp)
关注作者微信公众号 — 《JAVA烤猪皮》
了解了更多java后端架构知识以及最新面试宝典
看完本文记得给作者点赞+在看哦~~~大家的支持,是作者来源不断出文的动力~
评论
SpringCloud微服务框架Hystrix服务熔断
Springcloud框架的Hystrix负载均衡相关概念Hystrix是一个用于处理分布式系统的延迟和容错的开源库,在分布式系统里,许多依赖不可避免的会调用失败,比如超时、异常等,Hystrix能够保证在一个依赖出问题的情况下,不...
不一样的菜鸟
0