如果你正在做后端开发,或者正在准备找实习/秋招,那你一定绕不开一个关键词:微服务。
而在 Java 技术栈中,微服务的“标配方案”,就是今天的主角——Spring Cloud。
很多同学第一次接触 Spring Cloud 时,都会有这样的困惑:
微服务到底解决了什么问题?Spring Boot 和 Spring Cloud 有什么区别?那么多组件(Eureka、Gateway、Feign…)到底是干嘛的?项目中到底该怎么用?
这篇文章帮你一次性讲清楚,保证你看完能直接写进简历。
一、为什么会有 Spring Cloud?
在讲 Spring Cloud 之前,我们先看一个问题:
一个传统单体项目长什么样?
用户模块 + 订单模块 + 商品模块 + 支付模块 = 一个大项目
优点:
简单、开发快
缺点:
修改一个模块要重新部署整个项目一旦某个模块崩了,整个系统一起挂难以扩展(并发一高就容易出现性能瓶颈)
微服务架构的出现
为了解决这些问题,微服务架构应运而生:
把一个大系统拆成多个“小服务”
用户服务
订单服务
商品服务
支付服务
每个服务:
独立开发独立部署独立扩展
听起来很美好,但问题也随之而来。
微服务带来的新问题
当服务一多,就会遇到:
服务之间怎么通信?服务挂了怎么办?怎么做负载均衡?怎么统一网关入口?怎么监控这些服务?
于是,Spring Cloud 就诞生了。
如何全面掌握Spring Cloud微服务,从入门到实战?
摘要:如果你正在做后端开发,或者正在准备找实习秋招,那你一定绕不开一个关键词:微服务。 而在 Java 技术栈中,微服务的“标配方案”,就是今天的主角——Spring Cloud。 很多同学第一次接触 Spring Cloud 时,都会有这样的
