SpringCloud 入门

概述

传统的架构从:单体结构、集群结构、SOA结构、微服务结构演变。随着业务越来越庞大,复杂度越来越高,通过微服务架构来拆分问题,降低单个问题的复杂度。于是有了微服务全家桶。
拆分的弊端就是:配置、运维管理、监控,为此全家桶也有对应的解决方案,来降低影响

微服务全家桶多个组件,分别来解决分布式结构的不同问题:
配置文件、监控、RPC调用、负载均衡、容错、网关、注册中心等等,在结合Docker和Jenkenis等工具,轻松管理大型复杂独立应用。

  1. Eureka:java写的轻量级注册中心,各个独立的应用可以根据applicationName来找到彼此

  2. Feign:微服务之间的调用

  3. Ribbon:集群的负载均衡器、还有RPC的传输协议

  4. 熔断器:解决调用失败的解决方案

  5. Actutor(Admin):监控每个节点的运行情况(配置、心跳、JVM情况、注册的Bean)

  6. Zuul:网关,Zuul+Eureka解决应用和IP耦合的问题(Nginx),在对外暴露数据调用的时候非常有用

  7. Config:集中管理配置文件

  8. Sleuth:网络之间调用的监控工具

  9. Docker、Jenkenis:额外的助力工具,方便运维和部署

特点描述

微服务vs传统开发

  • 分工不同,以前我们可能是一个一个模块,现在可能是一人一个系统。

  • 架构不同,服务的拆分是一个技术含量很高的问题,拆分是否合理对以后发展影响巨大。

  • 部署方式不同,如果还像以前一样部署估计累死了,自动化运维不可不上。

  • 容灾不同,好的微服务可以隔离故障避免服务整体down掉,坏的微服务设计仍然可以因为一个子服务出现问题导致连锁反应。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容