你知道分布式網(wǎng)站架構嗎?
時間:2018-01-26 訪問量:1119
對于大型網(wǎng)站,分層和分隔的一個主要目的是為了切分后的模塊便于分布式部署,即將不同模塊部署在不同的服務器上,通過遠程調(diào)用協(xié)同工作。分布式意味著可以使用更多的計算機完同樣的工作,計算機越多,CPU、內(nèi)存、存儲資源就越多,能過處理的并發(fā)訪問和數(shù)據(jù)量就越大,進而能夠為更多的用戶提供服務。
在網(wǎng)站應用中,常用的分布式方案有一下幾種:
分布式應用和服務:
將分層和分隔后的應用和服務模塊分布式部署,可以改善網(wǎng)站性能和并發(fā)性、加快開發(fā)和發(fā)布速度、減少數(shù)據(jù)庫連接資源消耗。
分布式靜態(tài)資源:
網(wǎng)站的靜態(tài)資源如js、CSS、Logo圖片等資源對立分布式部署,并采用獨立的域名,即人們常說的動靜分離。靜態(tài)資源分布式部署可以減輕應用服務器的負載壓力;通過使用獨立域名加快瀏覽器并發(fā)加載的速度。
分布式數(shù)據(jù)和存儲:
大型網(wǎng)站需要處理以P為單位的海量數(shù)據(jù),單臺計算機無法提供如此大的存儲空間,這些數(shù)據(jù)庫需要分布式存儲。
分布式計算:
目前網(wǎng)站普遍使用Hadoop和MapReduce分布式計算框架進行此類批處理計算,其特點是移動計算而不是移動數(shù)據(jù),將計算程序分發(fā)到數(shù)據(jù)所在的位置以加速計算和分布式計算。