Spring Cloud(1) 微服務簡介

2022-01-14 06:21:07 字數 1819 閱讀 4034

架構的演進:

1.十年前:使用者->單一伺服器->單一資料庫(支援十萬級使用者)

2.五年前:使用者->負載均衡器->多台伺服器->快取集群->主從資料庫(支援百萬級使用者)

3.近兩年:使用者->負載均衡器->閘道器集群->模組1集群->模組1資料庫集群

->模組2集群->模組2資料庫集群

->模組3集群->模組3資料庫集群

->......(支援千萬級使用者)

第三種方式稱為微服務,現在的大公司基本採用這種方式

每個微服務可獨立執行在自己的程序裡;

一系列獨立執行的微服務共同構建起了整個系統;

每個服務為獨立的業務開發,乙個微服務一般完成某個特定的功能,比如:訂單管理,使用者管理等;

微服務之間通過一些輕量級的通訊機制進行通訊,例如通過rest api或者rpc的方式進行呼叫。

易於開發和維護

啟動較快

區域性修改容易部署

技術棧不受限

按需伸縮

運維要求較高

分布式的複雜性

介面調整成本高

重複勞動

微服務的基礎名詞:

閘道器:路由**+過濾器

服務註冊發現:呼叫和被呼叫方的資訊維護

配置中心:管理配置,動態更新

鏈路追蹤:分析呼叫鏈路耗時

熔斷:保護自己和被呼叫方

常見的微服務框架:

1.dubbo系列:zookeeper+dubbo+springmvc/springboot

應用:阿里,滴滴

通訊方式:rpc

註冊中心:zookeeper、redis

配置中心:diamond

2.springcloud系列:spring系列+netflix元件

通訊方式:http restful

註冊中心:eruka、consul

註冊中心:config

熔斷器:hystrix

閘道器:zuul

分布式追蹤系統:sleuth+zipkin

區別和選擇:

1.dubbo基於rpc,速度略高於spring cloud系列

2.spring cloud源於spring,元件眾多

比喻:dubbo

使用dubbo構建的微服務架構就像組裝電腦,各環節我們的選擇自由度很高。

但是最終結果很有可能因為一條記憶體質量不行就點不亮了,總是讓人不怎麼放心。

但是如果你是一名高手,那這些都不是問題。

spring cloud

而spring cloud就像品牌機。

在spring source的整合下,做了大量的相容性測試,保證了機器擁有更高的穩定性。

但是如果要在使用非原裝元件外的東西,就需要對其基礎有足夠的了解。

學習SpringCloud(1)簡介

spring cloud是一系列框架的有序集合。它利用spring boot的開發便利性巧妙地簡化了分布式系統基礎設施的開發,如服務發現註冊 配置中心 訊息匯流排 負載均衡 斷路器 資料監控等,都可以用spring boot的開發風格做到一鍵啟動和部署。spring cloud並沒有重複製造輪子,它...

SpringCloud系列 1 初試微服務

微服務 之前在寫springboot的筆記時,就有提及到springcloud。springcloud提供了微服務的開箱即用。微服務近年來非常火,到處都在說微服務。筆者也對微服務相當感興趣,因為筆者在校期間 n年前 曾經和很多同學聊過,如果所有的應用並不是單體的,而是通過很多系統提供api這會變成怎...

SpringCloud 微服務與微服務對接心德

對方已經提供好乙個api文件,然後傳一堆傳輸,返回給我一些資訊。如下 我這邊建立實體類,返回值這些東西,如下 介面如下 feignclient還有以下標籤 name 指定feignclient的名稱,如果專案使用了ribbon,name屬性會作為微服務的名稱,用於服務發現 url url一般用於除錯...