Spring Cloud微服务架构-基础知识及组件简介

  • 前言

本章节系列适合有一定基础,正在了解、学习分布式架构的朋友们,为保证内容质量,大部分资源借助Spring Cloud中国社区、官方源码和翟永超先生所著《Spring Cloud微服务实战》一书中揣摩、提炼、论证而来的,版本是基于1.X。

由于Spring Cloud发布时间并不长,目前网上关于Spring Cloud的资源杂乱无章,让很多在用Spring Cloud的朋友很头疼,遇到问题不知所措,接下来笔者会针对这些痛点问题整理分析。

OK,需要说明的是:本章节系列并不是描述如何从0搭建一个微服务架构,而是按Spring Cloud组件拆解,把关键点、开发中常用的技术点及核心原理作整理。所以,本内容可能没办法让你从0开始,但当你有疑点的时候,或许能在这找到答案!

希望本内容能给广大朋友提供些许帮助,同时欢迎朋友们把好的建议和疑问在文章下方留言或发送到我邮箱(369787235@qq.com)一起探讨,让文章更加完善,thanks!

 

  • 基础知识:

Spring Cloud(后文将统一称之为'SC')是目前做微服务架构一个很好的框架体系,它不并不是一种技术、一种框架,它是很多技术的结合体(后文将详细介绍)。

OK,凡事都有两面性,那么微服务架构带来的好处和坏处大体可以分为以下几点:

  1. 解决单体应用随着业务扩增变得越来越臃肿的问题;
  2. 解决单体系统重新部署导致所有功能不可用问题;
  3. 系统各个业务场景不一样,并发量,资源消耗量等等,微服务架构能够针对性的为不同服务配以相应条件;
  4. 增加开发、运维难度,以及开发成本成倍增加;

总结:单体系统在初期可以非常方便的开发和使用,但是随着系统的发展,业务不断扩增,将会导致系统变得非常臃肿,难以维护,而微服务架构能够让系统在扩展性,可用性,稳定性方面都有更好的表现;

 

  • SC组件简介(标蓝色为常用基本组件,也会在本专栏优先探讨):

1.Spring Cloud Config:分布式配置管理组件;

2.Spring Cloud Netflix:核心组件,对多个Netflix OSS开源套件进行组合;

Eureka:服务注册中心,实现服务注册与服务发现;

Hystrix:容错管理组件,实现断路器模式,帮助服务依赖中出现的延迟和为故障提供强大的容错能力;

Ribbon:客户端负载均衡的服务调用组件;

Feign:基于ribbon和 hystrix的声明式服务调用组件;

Zuul:网关组件,提供智能路由,访问过滤等功能;

Archaius:外部化配组件.
3.Spring Cloud Bus:事件、消息总线,用于传播集群中的状态变化或事件,以触发后续的处理,比如用来动态刷新配置等;

4.Spring Cloud Cluster:针对Zookeeper、Redis、Hazelcast、Consul的选举算法和通用状态模式的实现;

5.Spring Cloud Stream:通过Redis、rabbitmq或者kafka实现的消费微服务,可以通过简单的声明式模型来发送和接收消息;

6.Spring Cloud Security:安全工具包,提供在Zuul代理中对OAuth2客户端请求的中继器;

7.Spring Cloud ZooKeeper:基于ZooKeeper的服务发现与配置管理组件;

8.Spring Cloud Sleuth:分布式服务端链路跟踪组件,常和Logstash,Zipkin整合使用

 

Ok,本章节到此结束,下一章节介绍:Eureka.

Thanks!

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值