性能與資金
隨著互聯(lián)網(wǎng)的發(fā)展,許多大中型的網(wǎng)站都保存了大量的圖片資源,用戶在訪問這些圖片資源異常豐富的網(wǎng)站(如淘寶、京東等電子商務(wù)網(wǎng)站)時(shí),網(wǎng)頁中的圖片信息占據(jù)了頁面數(shù)據(jù)流量的很大部分,那么問題也來了:
(1)由于受客戶端瀏覽器限制,無法從一臺(tái)服務(wù)器上同時(shí)下載頁面中所有圖片信息;
(2)由于圖片保存在物理服務(wù)器上,訪問圖片需要頻繁進(jìn)行I/O操作:因此當(dāng)并發(fā)用戶數(shù)越來越多時(shí),I/O操作就會(huì)成為整個(gè)系統(tǒng)的性能瓶頸;
(3)由于受操作系統(tǒng)的限制,一個(gè)目錄中能存放的圖片文件數(shù)量也是有限的:隨著圖片資源不斷增加,如何有效管理和維護(hù)圖片也是一個(gè)難題;
對(duì)于少數(shù)大型網(wǎng)站系統(tǒng),由于自身具有雄厚的資金和人力資源,可采用NFS、CDN、Lighttpd、反向代理、負(fù)載均衡等技術(shù)提高用戶訪問速度;但是,這些技術(shù)需要龐大的資金來支持。對(duì)于多數(shù)中小型網(wǎng)站系統(tǒng),有木有一種方案適用于中等規(guī)模商務(wù)網(wǎng)站的海量圖片數(shù)據(jù)分布式動(dòng)態(tài)存儲(chǔ)及負(fù)載均衡的解決方案?該方案可否只需增加很少的硬件成本,即可提升網(wǎng)站的訪問速度,并且可以根據(jù)需要?jiǎng)討B(tài)調(diào)整圖片服務(wù)器的數(shù)量及圖片的存儲(chǔ)目錄,確保系統(tǒng)具有可擴(kuò)展性和伸縮性。架構(gòu)設(shè)計(jì):構(gòu)建圖片服務(wù)器集群
對(duì)于小型網(wǎng)站,由于數(shù)據(jù)規(guī)模小,可以把網(wǎng)站所有頁面和圖片統(tǒng)一存放在一個(gè)主目錄下,這樣的網(wǎng)站對(duì)系統(tǒng)架構(gòu)、性能要求都很簡(jiǎn)單。但大中型網(wǎng)站都保存有海量級(jí)的圖片文件,所采用的技術(shù)更是涉及廣泛,從硬件到軟件、編程語言、數(shù)據(jù)庫、Web服務(wù)器、防火墻等各個(gè)領(lǐng)域都有較高要求。因此,有必要設(shè)立單獨(dú)的圖片服務(wù)器來專門存放圖片,把圖片數(shù)據(jù)的流量從Web服務(wù)器上分離開,這樣的架構(gòu)可以有效緩解Web服務(wù)器的I/O性能瓶頸,提升用戶的訪問速度。
1 系統(tǒng)設(shè)計(jì)目標(biāo)
基于以上的考慮,我們希望的設(shè)計(jì)目標(biāo)是:
(1)圖片能進(jìn)行分布式存儲(chǔ);
(2)圖片服務(wù)器能實(shí)現(xiàn)負(fù)載均衡;
(3)能根據(jù)用戶訪問量及網(wǎng)站圖片數(shù)據(jù)量的增加能動(dòng)態(tài)添加圖片服務(wù)器節(jié)點(diǎn);
(4)圖片服務(wù)器節(jié)點(diǎn)的動(dòng)態(tài)調(diào)整對(duì)網(wǎng)站用戶而言是透明的,并且不會(huì)中斷系統(tǒng)的正常運(yùn)行;
其中,(1)和(2)是針對(duì)系統(tǒng)的高可用和伸縮性,而(3)和(4)則是針對(duì)系統(tǒng)的高可用和可擴(kuò)展而言的。
2 系統(tǒng)架構(gòu)設(shè)計(jì)
系統(tǒng)整體架構(gòu)如上圖所示:包括客戶端、Web服務(wù)器、數(shù)據(jù)庫服務(wù)器、圖片服務(wù)器集群4個(gè)部分。
(1)Web服務(wù)器部署網(wǎng)站的Web頁面,用于響應(yīng)客戶端用戶的請(qǐng)求。當(dāng)用戶瀏覽網(wǎng)頁時(shí),Web服務(wù)器響應(yīng)請(qǐng)求并訪問數(shù)據(jù)庫服務(wù)器,獲得網(wǎng)頁中所有圖片的URL路徑,然后生成頁面并返回給客戶端;
(2)客戶端接收該頁面并根據(jù)頁面中的圖片URL路徑自動(dòng)從不同的圖片服務(wù)器下載并顯示相應(yīng)圖片。
(3)數(shù)據(jù)庫服務(wù)器用于記錄所有圖片的編號(hào)以及圖片的存放位置等信息,同時(shí)需要記錄所有圖片服務(wù)器的配置及當(dāng)前狀態(tài)信息。
(4)圖片服務(wù)器集群用于存放網(wǎng)站的所有圖片信息,該集群的服務(wù)器數(shù)量可以根據(jù)需要?jiǎng)討B(tài)增加或刪減。
1.《圖片存儲(chǔ)服務(wù)器 如何高效的構(gòu)建一個(gè)大型的圖片服務(wù)器》援引自互聯(lián)網(wǎng),旨在傳遞更多網(wǎng)絡(luò)信息知識(shí),僅代表作者本人觀點(diǎn),與本網(wǎng)站無關(guān),侵刪請(qǐng)聯(lián)系頁腳下方聯(lián)系方式。
2.《圖片存儲(chǔ)服務(wù)器 如何高效的構(gòu)建一個(gè)大型的圖片服務(wù)器》僅供讀者參考,本網(wǎng)站未對(duì)該內(nèi)容進(jìn)行證實(shí),對(duì)其原創(chuàng)性、真實(shí)性、完整性、及時(shí)性不作任何保證。
3.文章轉(zhuǎn)載時(shí)請(qǐng)保留本站內(nèi)容來源地址,http://f99ss.com/keji/489306.html