微服务精华问答 | 为什么需要微服务?
戳藍字“CSDN云計算”關注我們哦!
過去幾年來,“微服務架構”這個術語出現了,它描述了一種將軟件應用程序設計為可獨立部署的服務套件的特定方式。盡管這種架構風格沒有確切的定義,但圍繞業務能力,自動化部署,端點智能以及語言和數據的分散控制等方面存在著某些共同特征。
1
Q:微服務與SOA 架構有什么關系?
A:SOA :面向服務的架構
微服務將復雜的業務組件化,也是一種面向服務的架構,對于SOA來說,他也是SOA的一種實現,但是他比ESB實現的 SOA 更加的輕便,敏捷和簡單
2
Q:微服務的不足
A:1、微服務的復雜度相對于單體應用來說,較為復雜
2、微服務涉及到分布式事務 【不能同時滿足CAP 要求】
3、服務的劃分比較難以處理
4、服務的部署難題
3
Q:微服務架構有什么優點?
A:微服務架構的好處
????? 1.單個服務很容易開發、理解和維護。
????? 2.這種架構使得每個服務都可以有專門開發團隊來開發。
????? 3.微服務架構模式是每個微服務獨立的部署。
????? 4.微服務架構模式使得每個服務獨立擴展。
4
Q:微服務內部通信的方式有哪些?
A:內部服務之間的通信方式有兩種:
1、基于HTTP協議的同步機制(REST、RPC);
2、基于消息隊列的異步消息處理機制(AMQP-based message broker)。
5
Q:為什么需要微服務?
A:“微服務”架構是近期軟件應用領域非常熱門的概念。讓我們先來看看傳統IT架構面臨的一些問題:
使用傳統的整體式架構(Monolithic Architecture)應用開發系統,如CRM、ERP等大型應用,隨著新需求的不斷增加,企業更新和修復大型整體式應用變得越來越困難;
隨著移動互聯網的發展,企業被迫將其應用遷移至現代化UI界面架構以便能兼容移動設備,這要求企業能實現應用功能的快速上線;
許多企業在SOA投資中得到的回報有限,SOA可以通過標準化服務接口實現能力的重用,但對于快速變化的需求,受到整體式應用的限制,有時候顯得力不從心;
隨著應用云化的日益普及,生于云端的應用具有與傳統IT不同的技術基因和開發運維模式。
此外,從技術方面看,云計算及互聯網公司大量開源輕量級技術不停涌現并日漸成熟:
互聯網/內聯網/網絡更加成熟;
輕量級運行時技術的出現(node.js, WAS Liberty等);
新的方法與工具(Agile, DevOps, TDD, CI, XP, Puppet, Chef…);
新的輕量級協議(RESTful API接口, 輕量級消息機制);
簡化的基礎設施:操作系統虛擬化(hypervisors), 容器化(e.g. Docker), 基礎設施即服務 (IaaS), 工作負載虛擬化(Kubernetes,Spark…)等;
服務平臺化(PaaS): 云服務平臺上具有自動縮放、工作負載管理、SLA 管理、消息機制、緩存、構建管理等各種按需使用的服務;
新的可替代數據持久化模型:如NoSQL, MapReduce, BASE, CQRS等;
標準化代碼管理:如Github等。
?這一切都催生了新的架構設計風格 – 微服務架構的出現。
小伙伴們沖鴨,后臺留言區等著你!
關于微服務,今天你學到了什么?還有哪些不懂的?除此還對哪些話題感興趣?快來留言區打卡啦!留言方式:打開第XX天,答:……
同時歡迎大家搜集更多問題,投稿給我們!風里雨里留言區里等你~
福利
1、掃描添加小編微信,備注“姓名+公司職位”,加入【云計算學習交流群】,和志同道合的朋友們共同打卡學習!
2、公眾號后臺回復:白皮書,獲取IDC最新數據白皮書整理資料!
推薦閱讀:
做了中臺就不會死嗎?每年至少40%開發資源是被浪費的!
美女主播變大媽:在bug翻車現場說測試策略
漫畫高手、小說家、滑板專家……解鎖程序員的另一面!
手把手教你如何用Python模擬登錄淘寶
鴻蒙霸榜 GitHub,從最初的 Plan B 到“取代 Android”?
每天超50億推廣流量、3億商品展現,阿里媽媽的推薦技術有多牛?
真香,朕在看了!
總結
以上是生活随笔為你收集整理的微服务精华问答 | 为什么需要微服务?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 信用卡逾期了没钱还怎么办
- 下一篇: Boost:align overflow