为什么要掌握微服务架构?
架构圈有句名言“任何脱离场景的架构设计都是耍流氓”。没错,在分布式架构演进的几十年过程中出现了几十种架构模式,但目标只有一个,解决上一代架构遗留的各种问题。微服务架构也不例外,随着互联网、物联网的广泛应用,高并发应用程序在数量与体量上都在以指数级提高,传统的单体应用、SOA 等架构已经不足以支撑新环境对应用性能与可靠性的要求。
为什么 Spring Cloud Alibaba 会迅速崛起
你现在可能有疑问,这几年微服务架构上 Spring Cloud 官方生态已经很成熟了,为什么我还要去学 Spring Cloud Alibaba 呢?
其实微服务看似是将整体应用打散为小服务这种很简单的处理,实则操作起来非常复杂,针对新的微服务架构额外产生的数据一致性问题、网络通信故障、限流与熔断机制、调用链路跟踪、集群监控、甚至用户登录与权限管理都是全新的挑战。如果这些问题全部都要软件公司自己解决显然是行不通的,好在这几年以 Spring Cloud 为基础的微服务技术生态日渐成熟,前面提到的大多数问题确实都已得到了有效解决。
但好景不长,在这几年以 Netfilix Eureka 为代表的 Spring Cloud 核心中间件纷纷停止更新,再加上许多组件设计老旧,在性能上已无法满足互联网大厂的要求,我们迫切需要一套符合中国特色的微服务架构解决方案。
Spring Cloud Alibaba 就是在这种背景下诞生的,Spring Cloud Alibaba 是国产的微服务开发一站式解决方案,与原有 Spring Cloud 兼容的同时对微服务生态进行扩展,通过添加少量的配置注解,便可实现更符合国情的微服务架构。
相比 Spring Cloud 官方标准,Spring Cloud Alibaba 提供了更完整的功能、更好用的 API,同时在中文的加持下让复杂的微服务架构变得不再高不可攀,目前 Spring Cloud Alibaba 已经是事实上的国内微服务技术标准,这也是我为什么要编写合集 Spring Cloud Alibaba 的重要原因。