Microservices?is a variant of the?service-oriented architecture(SOA) architectural style that structures an application as a collection of?loosely coupled?services. ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
維基百科(1)
微服務(wù)是一種面向服務(wù)架構(gòu)(SOA),是一種松耦合的服務(wù)架構(gòu)。
我理解的微服務(wù)是每個(gè)服務(wù)具有單一的功能(單一功能原則),許多這樣的“單一功能”服務(wù)共同組成了一個(gè)架構(gòu)就叫微服務(wù)架構(gòu)。
能做微服務(wù)架構(gòu)的不止Spring Cloud,但是據(jù)我了解Spring Cloud是目前做得最全的。本人將持續(xù)更新一系列文章記錄我在學(xué)習(xí)微服務(wù)過程中的一些心得體會(huì),不足之處歡迎指出。
相比于傳統(tǒng)“巨石”應(yīng)用,微服務(wù)有以下優(yōu)點(diǎn):
1. 每個(gè)服務(wù)獨(dú)立存在,所以可以單獨(dú)部署,不用每次發(fā)布某個(gè)功能都經(jīng)歷一次全服務(wù)發(fā)布。
2. 遵循單一功能原則,服務(wù)之間可以通過RESTFUL或者RPC調(diào)用,功能解藕
3. “細(xì)粒度”的高可擴(kuò)展性,每個(gè)服務(wù)都可以單獨(dú)擴(kuò)展,單獨(dú)負(fù)載均衡
4. 去中心化,盡可能地實(shí)現(xiàn)“自服務(wù)”
5. 有利于簡化開發(fā)測試以及部署,DevOps友好
有利必有弊,微服務(wù)有以下缺點(diǎn):
1. 服務(wù)的可用性和維護(hù)性高度依賴于服務(wù)治理,如果治理得不好將會(huì)是災(zāi)難
2. 某些服務(wù)可能造成性能瓶頸,某些服務(wù)的宕機(jī)可能導(dǎo)致很多服務(wù)受影響
3. 服務(wù)配置繁瑣
下一篇:SpringCloud 微服務(wù)(二) 創(chuàng)建一個(gè)簡單的服務(wù)
引用參考:
(1) https://en.wikipedia.org/wiki/Microservices