- 分布式:一個業務分拆多個子業務,部署在不同的服務器上
- 集群:同一個業務,部署在多個服務器上
- 微服務的意思也就是將模塊拆分成一個獨立的服務單元通過接口來實現數據的交互。
分布式是指將不同的業務分布在不同的地方。而集群指的是將幾台服務器集中在一起,實現同一業務。
分布式中的每一個節點,都可以做集群。而集群並不一定就是分布式的。
分布式,從窄意上理解,也跟集群差不多,但是它的組織比較松散,不像集群,有一個組織性,一台服務器垮了,其它的服務器可以頂上來。
分布式的每一個節點,都完成不同的業務,一個節點垮了,那這個業務就不可訪問了。
好的設計應該是分布式和集群的結合,先分布式再集群,具體實現就是業務拆分成很多子業務,然后針對每個子業務進行集群部署,這樣每個子業務如果出了問題,整個系統完全不會受影響。
微服務的設計是為了不因為某個模塊的升級和BUG影響現有的系統業務。微服務與分布式的細微差別是,微服務的應用不一定是分散在多個服務器上,他也可以是同一個服務器。
分布式和微服的架構很相似,只是部署的方式不一樣而已。
------------------------------------------------------------
分布式需要做好事務管理。
集群模式需要做好session共享,確保在不同服務器切換的過程中不會因為沒有獲取到session而中止退出服務。
一般配置Nginx*的負載容器實現:靜態資源緩存、Session共享可以附帶實現,Nginx支持5000個並發量。