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