集羣、負載均衡、微服務、分佈式的概念

 

集羣    多臺主機幹一樣的事

好比web容器,只使用一個主機:web

  • 這個主機發生故障,直接gg。
  • 數據庫併發量大時,這個主機負擔很大

 

數據庫集羣:使用多個主機,這些主機上都運行web容器。redis

  • 某些主機發生故障,其它主機還能工做,影響不大
  • 更好應對併發

 

常見的集羣:數據庫

  • web服務器集羣,好比tomcat集羣
  • 數據庫集羣(讀寫分離)
  • 緩存集羣,好比redis集羣
  • 搜索引擎集羣

 

 


 

 

 

負載均衡(Load Balancer)

集羣以後,一大片主機都幹一樣的事兒,具體交給哪臺機器處理呢?這就須要單獨使用一臺機器來完成負載均衡。緩存

請求發送給負載均衡的服務器,由負載均衡服務器決定發給集羣中的哪一個機器來處理。tomcat

 

 


 

 

 

微服務   將一個大項目拆分爲多個子模塊

傳統的項目是單體應用,若是項目很大,升級維護會很麻煩,修改某一模塊,須要從新部署整個項目。服務器

微服務是把子模塊抽取出來,變成一個個微服務,可單獨修改、部署,在項目主體中調用這些微服務便可。微服務之間經過消息隊列來通訊。session

 

 


 

 

 

分佈式

將一個大的項目、應用劃分爲多個子模塊,單獨部署到多個主機上。併發

好比將web容器單獨安裝到一臺主機上,把redis單獨安裝到一個主機上,把數據庫單獨安裝到一個主機上,協同完成一個項目。負載均衡

 

分佈式是一個很籠統的概念,集羣、微服務也算是分佈式的。分佈式

 

 


 

 

分佈式儲存

有時須要將數據以文件形式儲存到硬盤,好比session鈍化、對象序列化、上傳文件的儲存、大數據儲存等。

咱們專門用一堆主機來儲存文件,並進行儲存儲優化、備份,將這些文件映射到一個虛擬的文件系統中,實現分佈式存儲。

相關文章
相關標籤/搜索