springcloud入门[宏观认识]
1.1. 什么是微服務(wù)
獨(dú)立的系統(tǒng)拆分成多個(gè)小型服務(wù),服務(wù)在各自進(jìn)程中運(yùn)行,服務(wù)間通過基于HTTP的RESTful風(fēng)格的API進(jìn)行通信協(xié)作
高內(nèi)聚,低耦合,獨(dú)立開發(fā)測試部署,可以使用不同語言編寫
1.2. 與單體系統(tǒng)的區(qū)別
單體:一處修改,影響全局,部署困難,維護(hù)困難
微服務(wù):不同功能模塊可以單獨(dú)擴(kuò)展和維護(hù);一個(gè)服務(wù)更新不會(huì)影響其他服務(wù);便于容量評(píng)估;
1.3. 如何實(shí)施
運(yùn)維:原來運(yùn)維一個(gè)現(xiàn)在維護(hù)多個(gè)
接口一致性:版本管理接口管理
分布式復(fù)雜:網(wǎng)絡(luò)延遲,分布式事務(wù),異步消息
微服務(wù)九大特性:
服務(wù)組件化:像計(jì)算機(jī)組成一樣組成軟件服務(wù),一個(gè)可以獨(dú)立更換和升級(jí)的單元
按業(yè)務(wù)組織團(tuán)隊(duì):
做產(chǎn)品的態(tài)度:持續(xù)關(guān)注服務(wù)運(yùn)作,不斷改善
智能端點(diǎn)和啞管道:由進(jìn)程內(nèi)方法調(diào)用改為RPC調(diào)用(粗粒度) http restful api調(diào)用,輕量級(jí)消息總線mq中間件
去中心化治理:不同的服務(wù)用不同的技術(shù)實(shí)現(xiàn)
去中心化數(shù)據(jù)管理:強(qiáng)調(diào)無事務(wù)調(diào)用,最終一致性
基礎(chǔ)設(shè)施自動(dòng)化:自動(dòng)測試,自動(dòng)部署
容錯(cuò)設(shè)計(jì):單體一掛全掛,微服務(wù)自動(dòng)恢復(fù)
演進(jìn)式設(shè)計(jì):不可一下子追求太完美,不斷完善
1.4. why cloud
比沒有經(jīng)驗(yàn)的人組裝的更加穩(wěn)定,相當(dāng)于品牌機(jī)
社區(qū)活躍度高
spring背景強(qiáng)大
1.5. spring boot
cloud基礎(chǔ)
自動(dòng)配置,快速開發(fā),輕松
2. 服務(wù)治理:Eureka
springboot風(fēng)格的自動(dòng)化配置,引入依賴和注解配置輕松整合
服務(wù)注冊
服務(wù)
3. client負(fù)載均衡:Ribbon
客戶端維護(hù)
4. 容錯(cuò):Hystrix
斷路器監(jiān)控故障避免故障在分布式系統(tǒng)中蔓延
服務(wù)降級(jí),服務(wù)熔斷,線程和信號(hào)隔離,請(qǐng)求緩存,請(qǐng)求合并以及服務(wù)監(jiān)控
5. 聲明式服務(wù)調(diào)用:Feign
整合Ribbon客戶端負(fù)載均衡和Hystrix容錯(cuò),聲明式web服務(wù)客戶端定義
可插拔注解支持
6. API網(wǎng)關(guān):Zuul
所有外部客戶端的訪問都要經(jīng)過它的調(diào)度和過濾:相當(dāng)于外觀模式
基本功能:請(qǐng)求路由,負(fù)載均衡,校驗(yàn)過濾
高級(jí):服務(wù)治理框架整合,熔斷機(jī)制,服務(wù)
7. 配置中心:Config
基礎(chǔ)設(shè)施和應(yīng)用的外部集中配置中心
8. 消息總線:Bus
廣播,消息訂閱和消費(fèi),應(yīng)用配置信息的自動(dòng)更新
9. 消息驅(qū)動(dòng):Stream
輕量級(jí)消息驅(qū)動(dòng)微服務(wù)框架
簡化消息中間件的使用,自動(dòng)化配置風(fēng)格,RabbitMq,
10. 服務(wù)跟蹤:Sleuth
一個(gè)請(qǐng)求可能對(duì)應(yīng)多個(gè)后端鏈路,每條鏈路以來的額服務(wù)出現(xiàn)延遲過高或錯(cuò)誤都可能失敗,這個(gè)就是用來全鏈路跟蹤,幫助快速發(fā)現(xiàn)錯(cuò)誤根源和每條請(qǐng)求鏈路上的性能
總結(jié)
以上是生活随笔為你收集整理的springcloud入门[宏观认识]的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 精益生产改善方法有哪些?详解:精益生产之
- 下一篇: 螺丝孔的视觉定位检测软硬件方案--康耐德