Spring Cloud之基礎概念篇

2021-10-19 09:17:10 字數 2392 閱讀 8347

spring cloud是一系列框架的有序集合(spring cloud是乙個規範)。開發服務發現註冊、配置中心、訊息匯流排、負載均衡、斷路器、資料監控等。利用spring boot的開發便利性簡化了微服務架構的開發(自動裝配)

這裡,我們需要注意,spring cloud其實是一套規範,是一套用於構建微服務架構的規範,而不是乙個可以拿來即用的框架(所謂規範就是應該有哪些功能元件,然後元件之間怎麼配合,共同完成什麼事情)。在這個規範之下第三方的netflix公司開發了一些元件、spring官方開發了一些框架/元件,包括第三方的阿里巴巴開發了一套框架/元件集合spring cloud alibaba,這些才是spring cloud規範的實現。

netflix搞了一套 ,

簡稱scn

。spring cloud 吸收了netflix公司的產品基礎之上自己也搞了幾個元件阿里巴巴在之前的基礎上搞出了一堆微服務元件,

spring cloud alibaba(sca)

。spring cloud 規範及實現意圖要解決的問題其實就是微服務架構實施過程中存在的一些問題,比如微服務架構中的服務註冊發現問題、網路問題(比如熔斷場景)、統一認證安全授權問題、負載均衡問題、鏈路追蹤等問題。

distributed/versioned configuration (分布式/版本化配置)

service registration and discovery (服務註冊和發現)

routing (智慧型路由)

service-to-service calls (服務呼叫)

load balancing (負載均衡)

circuit breakers (熔斷器)

global locks (全域性鎖)

leadership election and cluster state ( 選舉與集群狀態管理)

distributed messaging (分布式訊息傳遞平台)

如前所述,spring cloud是乙個微服務相關規範,這個規範意圖為搭建微服務架構提供一站式服務,採用元件(框架)化機制定義一系列元件,各類元件針對性的處理微服務中的特定問題,這些元件共同來構成spring cloud微服務技術棧。

springcloud netflix(一代)

springcloud

官方 springcloud 

zookeeper

springcloud

consul

springcloud

kubernetes

springcloud

alibaba(二代)

分布式配置

archaius

springcloud

config

zookeeper

consul

configmap

nacos

服務註冊/發現

eureka

--------

zookeeper

consul

api server

nacos

服務熔斷

hystris

--------

--------

--------

--------

sentinel

服務呼叫

feign

openfeign

restemplate

--------

--------

--------

dubbo rpc

服務路由(閘道器)

zull

springcloud

getway

--------

--------

--------

dubbo proxy

分布式訊息

--------

scs rabbitmq

--------

--------

--------

scs rabbitmq

負載均衡

ribbon

--------

--------

--------

--------

dubbo lb

分布式事務

--------

--------

--------

--------

--------

seata

注: spring cloud 生態圈中的元件,按照發展可以分為第一代 spring cloud元件和第二代 springcloud元件。

一代現在還有企業再用,將來二代必然會是大趨勢。

本篇是基礎概念,接下來會出springboot,springcloud系列文章

SpringCloud學習基礎

有spring cloud b2b2c電子商務需求的朋友可以加企鵝求求 一零三八七七四六二六 鴻鵠雲cloud是基於springcloud來封裝的,是一系列框架的有序集合。利用spring boot的開發模式簡化了分布式系統基礎設施的開發,如服務發現 註冊 配置中心 訊息匯流排 負載均衡 斷路器 資...

SpringCloud之Dashboard 流監控

新建springcloud consumer hystrix dashboard模組 新增依賴 org.springframework.cloudgroupid spring cloud starter hystrixartifactid 1.4.6.releaseversion dependenc...

ELK(一) Elasticsearch基礎概念

elk提供了一整套解決方案,並且都是開源軟體,之間互相配合使用,完美銜接,高效的滿足了很多場合的應用。目前主流的一種日誌系統。elk是三個開源軟體的縮寫,分別表示 elasticsearch logstash,kibana 它們都是開源軟體。新增了乙個filebeat,它是乙個輕量級的日誌收集處理工...