以前的服務器就好像,一個會語數外全能的老師,為學生提供服務,這個老師生病了,那全校停課,現在微服務流行后,學校有了數學教研組,語文教研組,外語教研組,每個教研組有一群老師具體負責某科的教學,缺了誰,學校都照樣運轉,
而這個變化中,那些改變歷史的程式員就是把一個服務器中的眾多服務,或好幾臺服務器中的眾多服務,分類出來,解耦合出來,把他們類似的功能交給同一個集群來做,把互相耦合在一起的功能剝離出來,按業務,按功能來把他們作為一個個微服務放在服務器上,而這個服務器就只提供一個服務,或較少的服務,
讓一個超大的服務邏輯,解耦合為一個個小服務,均勻的分布在各自的服務器中,微服務就微在這,每個教研組就是一個微服務集群,他們提供同樣的服務,而注冊中心Eureka就是這個存放這個教研組老師名單的地方,學生們想先訪問這個注冊中心獲取教師名單,然后根據相應的負載方法去訪問各自老師,不至于讓集群中某一老師累死也不至于讓某一老師閑死,
而Zuul網關呢,就是學校的門衛,某些學生來學校找誰,它負責指引(路由),并且通過一些非常簡單的配置,達到阻攔一些人進入(身份驗證),或者控制想學數學的人只能去數學教研組,不能去核能教研組學怎么造原子彈(權限驗證),
那Hystrix熔斷器呢,可以把它當成學校的志愿者,當一個教研組集體罷課后,學生找不到老師了,這些志愿者及時的告訴來訪問的學生,相應的結果,例外資訊等,免得大量的學生在學校等待,這些志愿者趕快把這些等待的學生梳理出去,學生一直在學校等待,那其他需要學生的學校,也會等待學生,最后造成大面積的學校癱瘓,這里學生我們看成一個個請求,熔斷器就是把某事故的蔓延即使熔斷了,
當然這些組件也是微服務需要注冊到Eureka注冊中心
那 Spring Cloud 就可以看成是這個學校了,眾多上面提到的組件相當于都是這個學校的各職能部門,
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/265266.html
標籤:Java
上一篇:java 陣列詳解
下一篇:Java例外處理(捕獲例外)
