Spring framework架構的項目就像上海中心這樣的高樓大廈,一棟大廈里租用者各色各樣的公司和企業為用戶提供各種各樣的服務。
大廈里的每間辦公室都是一個容器,對應著一個docker容器,空辦公室對于用戶來說是沒有任何意義的,只有里面入住了企業(Spring boot),跑了各種程序,才叫一個微服務結點。
那是清澄的形象化理解?房間號可以理解成容器的ip和端口,企業名理解成微服務的服務名,如果一家企業規模較大,需要租多間辦公室才可以,那就是多個容器共同組成一個高可用性的微服務組群。
大廈有一本企業列表,有哪些企業提供哪些服務,對應的房間號是什么,這本列表就是Spring Cloud Eureka。
大廈的大門是所有企業的對外的gateway,用戶只能通過大門進去然后進行安檢后保安會幫你指路告訴你要找的企業在哪里,這里的大門和門衛就是Spring Cloud Zuul。
磁通量的形象化理解?也不是所有的房間都是給企業準備的,也有弱點室、茶水間等為所有企業準備的公共設施,這就是Spring Cloud Hystrix的Dashboard、redis、MQ等這些獨立的輔助服務。
如果要訪問大廈里的某一個企業你只知道企業名,你是不知道具體在哪一樓層哪一房間的,需要去看樓層的導航圖或者電梯附近的企業列表(Eureka),如果一個企業有多個房間,客戶自己決定進哪一個房間去獲取服務,這就是Spring Cloud Ribbon。如果你今天一連幾次都沒有在某一個企業獲得自己想要的服務,你會過段日子再來試試運氣(熔斷了),或者約幾個人一起來拜訪(請求聚合和拆解),這就是Spring Cloud Hystrix。如果你是有頭有臉的重要人物,以上訪問一個企業的流程不夠上檔次,大廈會安排專門的禮儀小姐在電梯口迎接,提高客戶滿意度,這就是Spring Cloud Feign。
如果你一次性進入這個大廈是要拜訪不止一個企業,什么時候進入哪個房間什么時候出來,什么時候又進入了其他的房間這些通過攝像頭都有記錄,而且都給你拍照留念,這個機制就是Spring Cloud Sleuth。
Springboot?這座大廈的物業公司叫GitHub,所有企業的保潔阿姨等都是Git上給分配的,每個企業每天換什么樣的地毯、衛生程度如何都是保潔阿姨決定的,他們是獨立于所有企業但是又影響到所有企業的一個組織,這貨就叫Spring Cloud Config。當然如果物業公司福利足夠好,保潔阿姨住集體公寓,每天上下班都有巴士接送,那就成了Spring Cloud Bus。
恰巧房間號701是生產皮革的企業,而房間703是生產LV包包的企業,倆家簽訂協議后一開始701的人搞到材料就給703送去,結果總是因為703手上活還沒干完而且沒多余的空間存放又讓701給抱回去,于是兩家商量好租下了702這個房間,皮革生產上把生產好的皮革直接送到702房里去,LV企業一旦加工完手上的這批包包就去702房里取新的材料來處理,這里702房就相當于一個Kafka或者RabbitMQ,而701和703之間與702之間的集成就是Spring Cloud Stream。
版权声明:本站所有资料均为网友推荐收集整理而来,仅供学习和研究交流使用。
工作时间:8:00-18:00
客服电话
电子邮件
admin@qq.com
扫码二维码
获取最新动态