摘 要:互聯(lián)網(wǎng)與檔案信息資源共享平臺(tái)進(jìn)行深度融合,需要在服務(wù)器、Web客戶端、移動(dòng)客戶端等不同平臺(tái)之間進(jìn)行數(shù)據(jù)處理。隨著檔案信息資源共享平臺(tái)使用用戶數(shù)量的增長(zhǎng),系統(tǒng)的性能要求也需要相應(yīng)的提升,不僅要使平臺(tái)能夠適應(yīng)現(xiàn)有的網(wǎng)絡(luò)環(huán)境,而且還要使數(shù)據(jù)處理響應(yīng)有效控制,平臺(tái)的并發(fā)服務(wù)處理能力得到增強(qiáng)。為此,從檔案信息資源共享平臺(tái)功能實(shí)現(xiàn)中的數(shù)據(jù)網(wǎng)絡(luò)傳輸層面、數(shù)據(jù)庫層面、平臺(tái)服務(wù)架構(gòu)層面等三個(gè)方面著手對(duì)共享平臺(tái)的性能進(jìn)行優(yōu)化,優(yōu)化后的平臺(tái)可滿足大數(shù)據(jù)時(shí)代系統(tǒng)的性能需求,提升系統(tǒng)使用的流暢程度,并能最大限度滿足用戶使用平臺(tái)過程中的體驗(yàn)。
關(guān)鍵詞:大數(shù)據(jù)時(shí)代;檔案信息資源;共享平臺(tái);性能優(yōu)化;數(shù)據(jù)庫優(yōu)化
Abstract:Internet and archival information resources sharing platform is being integrated deeply.It is need to process data between server, Web client, mobile client and other platforms. With the increase of the number of users, the performance requirements of the system should be improved with the use of the file information resources sharing platform.Not only should the platform be able to adapt to the existing network environment, but also to make the data processing response to favorably control, the platform's concurrent service processing ability has been enhanced.Therefore,we can optimize the performance of the shared platform from three aspects of the function of the file information resources sharing platform, the data network transmission level, the database level, the platform service architecture level and so on, Optimized platform can meet the performance requirements of the era of big data and promote the use of the system fluency, and to maximize the user experience in the use of the platform.
Keywords:Big data era; archives information resources; sharing platform; performance optimization; database optimization
檔案信息作為一種重要的信息資源,其有效開發(fā)和合理利用,不僅是社會(huì)技術(shù)進(jìn)步的需要,更重要的是關(guān)系到檔案信息創(chuàng)新成果能否充分運(yùn)用到社會(huì)生產(chǎn)和各項(xiàng)活動(dòng)中。檔案信息資源共享平臺(tái)的構(gòu)建便于檔案機(jī)構(gòu)向外部提供公開的各種檔案信息資源[1],而大數(shù)據(jù)具有大量、高速、多樣、價(jià)值等特征,它正在以一種獨(dú)特的方式和手段對(duì)海量數(shù)據(jù)集進(jìn)行深入挖掘和分析[2],將互聯(lián)網(wǎng)技術(shù)與檔案信息進(jìn)行創(chuàng)新融合將成為未來發(fā)展的必然趨勢(shì)。當(dāng)前互聯(lián)網(wǎng)技術(shù),尤其是移動(dòng)互聯(lián)網(wǎng)技術(shù)的發(fā)展,為檔案信息資源共享平臺(tái)的實(shí)現(xiàn)提供了新的實(shí)現(xiàn),其中將傳統(tǒng)的Web平臺(tái)上的資源共享于移動(dòng)平臺(tái)的性能瓶頸成為打通平臺(tái)互聯(lián)互通的難點(diǎn)。在大數(shù)據(jù)時(shí)代,針對(duì)檔案信息資源共享平臺(tái),從實(shí)際使用平臺(tái)用戶的體驗(yàn)方面入手,在數(shù)據(jù)傳輸、后臺(tái)數(shù)據(jù)處理方式和應(yīng)用服務(wù)架構(gòu)等三個(gè)方面對(duì)檔案信息資源共享平臺(tái)進(jìn)行優(yōu)化,為檔案信息資源共享平臺(tái)的性能優(yōu)化提供了綜合的解決方案參考。
1 大數(shù)據(jù)時(shí)代檔案信息資源共享平臺(tái)性能需求
大數(shù)據(jù)時(shí)代來臨之前,檔案信息一般采用檔案網(wǎng)站進(jìn)行發(fā)布,用戶群體也僅限于普通的計(jì)算機(jī)用戶,這種方式存在檔案信息資源匱乏,服務(wù)方式單一,資源利用效率不高[3]。大數(shù)據(jù)時(shí)代背景下,隨著移動(dòng)互聯(lián)網(wǎng)技術(shù)的發(fā)展,用戶除了可以通過電腦進(jìn)行檔案信息的檢索利用外,還能夠隨時(shí)隨地通過移動(dòng)設(shè)備接入檔案信息資源共享平臺(tái)進(jìn)行檢索利用,這就對(duì)檔案信息資源共享平臺(tái)提出了性能需求,在現(xiàn)有的網(wǎng)絡(luò)條件與設(shè)備配置條件下,能夠運(yùn)用移動(dòng)設(shè)備進(jìn)行檔案信息的檢索、上傳、下載及評(píng)論等相關(guān)操作,在實(shí)際的操作過程中由于各種限制,應(yīng)用會(huì)出現(xiàn)卡頓現(xiàn)象,這就對(duì)檔案信息資源共享平臺(tái)在性能方面提出更高的要求。
1.1 平臺(tái)能夠適應(yīng)現(xiàn)有的網(wǎng)絡(luò)環(huán)境。檔案信息資源共享平臺(tái)在大數(shù)據(jù)時(shí)代應(yīng)用的最大的特點(diǎn)是支持移動(dòng)客戶端,移動(dòng)設(shè)備可以支持的網(wǎng)絡(luò)已發(fā)展到今天的3G、4G,但仍存在大量的只支持2G的移動(dòng)設(shè)備,這就限制了使用移動(dòng)客戶端進(jìn)行檢索利用的效果,主要表現(xiàn)為數(shù)據(jù)傳輸速度慢。另一方面,4G網(wǎng)絡(luò)雖然網(wǎng)絡(luò)速度可以滿足要求,但是使用現(xiàn)有的平臺(tái)進(jìn)行檢索利用,需要耗費(fèi)大量的流量,由于目前流量資費(fèi)的限制,會(huì)使用戶轉(zhuǎn)向采用移動(dòng)互聯(lián)網(wǎng)進(jìn)行學(xué)術(shù)研究的習(xí)慣轉(zhuǎn)變帶來障礙。由于以上用戶實(shí)際體驗(yàn)及網(wǎng)絡(luò)環(huán)境實(shí)際的限制,就需要對(duì)檔案信息資源共享平臺(tái)做實(shí)質(zhì)性的優(yōu)化,目標(biāo)是優(yōu)化數(shù)據(jù)網(wǎng)絡(luò)傳輸及提升后端處理的效率。
1.2 平臺(tái)的數(shù)據(jù)處理響應(yīng)有效控制。檔案信息資源共享平臺(tái)是面向終端用戶的應(yīng)用,平臺(tái)上線應(yīng)用后隨著用戶量的增長(zhǎng),檔案信息的利用量也會(huì)快速增長(zhǎng)。用戶使用檔案信息資源共享平臺(tái)最多的是檔案信息的檢索與檔案信息的處理,在實(shí)際的檔案信息處理中需要一體化、便捷化、知識(shí)化的數(shù)字化融合服務(wù)[4],這就要求平臺(tái)的檢索效率有較大提升?,F(xiàn)實(shí)情況是對(duì)于數(shù)據(jù)量非常大的表,其檢索效率隨著數(shù)量的增長(zhǎng)會(huì)變得越來越低。同時(shí),平臺(tái)對(duì)于檔案信息的操作比較頻繁,比如上傳、審核、編輯數(shù)字化的檔案信息等操作,在實(shí)際的檔案信息處理過程中會(huì)出現(xiàn)數(shù)據(jù)丟失的情況。因此,平臺(tái)在數(shù)據(jù)處理響應(yīng)方面要求系統(tǒng)能夠滿足高效檢索、實(shí)時(shí)處理信息的能力。
1.3 平臺(tái)的并發(fā)服務(wù)處理能力增強(qiáng)。隨著移動(dòng)互聯(lián)網(wǎng)技術(shù)的發(fā)展,大數(shù)據(jù)檔案信息資源共享平臺(tái)會(huì)出現(xiàn)終端用戶同時(shí)對(duì)平臺(tái)進(jìn)行操作,這就會(huì)產(chǎn)生很多的并發(fā)數(shù)據(jù)請(qǐng)求, 遇到該情況系統(tǒng)的服務(wù)會(huì)出現(xiàn)死鎖現(xiàn)象,同時(shí)會(huì)影響后繼用戶正常使用系統(tǒng)。檔案信息資源共享平臺(tái)的優(yōu)化后需要能夠有效提升用戶體驗(yàn),做到用戶同時(shí)使用平臺(tái)不會(huì)出現(xiàn)請(qǐng)求得不到有效處理,進(jìn)一步改變用戶使用該平臺(tái)進(jìn)行檢索利用的方式,做到隨時(shí)隨地采用移動(dòng)客戶端進(jìn)行檔案信息的實(shí)時(shí)交互。
2 數(shù)據(jù)網(wǎng)絡(luò)傳輸層面優(yōu)化
數(shù)據(jù)網(wǎng)絡(luò)傳輸層面的優(yōu)化目標(biāo)主要有最大限度減少檔案信息數(shù)據(jù)中間傳輸過程中的數(shù)據(jù)量,另外對(duì)于檔案信息資源共享平臺(tái),對(duì)超長(zhǎng)信息上傳與瀏覽操作產(chǎn)生的傳輸數(shù)據(jù)量壓縮至最低,并使系統(tǒng)能夠適應(yīng)用戶實(shí)際的網(wǎng)絡(luò)環(huán)境。
2.1 采用JSON提升數(shù)據(jù)傳輸效率。對(duì)于檔案信息資源共享平臺(tái)首先要解決的是傳輸效率問題,使用戶在操作的過程中能夠正常使用系統(tǒng),從系統(tǒng)開發(fā)與實(shí)踐的角度看,主要是減少平臺(tái)在數(shù)據(jù)交互中的傳輸?shù)臄?shù)據(jù)量。檔案信息資源共享平臺(tái)在數(shù)據(jù)傳輸前會(huì)將需要傳輸?shù)臄?shù)據(jù)轉(zhuǎn)換成JSON(JavaScript Object Notation),它是一種輕量級(jí)獨(dú)立于編程語言的文本型數(shù)據(jù)傳輸格式[5],相對(duì)于傳統(tǒng)的XML格式數(shù)據(jù)傳輸,JSON數(shù)據(jù)格式比較簡(jiǎn)單,易于讀寫,格式都是壓縮的,占用帶寬小[6],實(shí)際的平臺(tái)中會(huì)將需要傳輸?shù)脑夹畔⑥D(zhuǎn)換為JSON格式,到達(dá)目標(biāo)后將JSON數(shù)據(jù)再次轉(zhuǎn)換成需要操作的數(shù)據(jù)類型,具體的方式如圖1所示:
通過JSON方式進(jìn)行數(shù)據(jù)壓縮后,由于傳輸?shù)臋n案信息數(shù)據(jù)量的減少而提升了系統(tǒng)的傳輸效率,用戶在實(shí)際的檔案信息檢索過程中可以大大加快檔案信息數(shù)據(jù)中間傳輸?shù)臅r(shí)間,從而使用戶的系統(tǒng)使用體驗(yàn)得到有效改善。
2.2 采用GZIP進(jìn)行傳輸數(shù)據(jù)壓縮。檔案信息資源共享平臺(tái)上傳與下載的檔案信息量,在傳輸過程中需要占用大量的網(wǎng)絡(luò)資源,因此系統(tǒng)操作員在實(shí)際的瀏覽與上傳檔案信息過程中會(huì)出現(xiàn)卡頓現(xiàn)象。針對(duì)大信息容量的數(shù)據(jù)傳輸,可以采用GZIP壓縮的方式進(jìn)行優(yōu)化。該方式最早由Jean-loup Gailly和Mark Adler創(chuàng)建,一般對(duì)純文本內(nèi)容可壓縮到原大小的40%[7],這樣文件的體積就縮減很多,傳輸速度相應(yīng)提高,采用gzip雖然可以取得較好的壓縮比,但它在分析和壓縮編碼的過程需要進(jìn)行大量的計(jì)算[8],檔案信息資源共享平臺(tái)采用.NET提供的GZipStream類進(jìn)行壓縮與解壓處理,此類在 .NET Framework 2.0 版中是新增的,提供用于壓縮和解壓縮流的方法和屬性,用戶完成檔案信息資源的上傳下載壓縮解壓過程如圖2:
采用GZIP壓縮可以大大節(jié)省服務(wù)器的網(wǎng)絡(luò)帶寬,內(nèi)容壓縮后可以大大提升用戶使用平臺(tái)的體驗(yàn)。
2.3 采用CDN解決相關(guān)傳輸問題。我國(guó)目前檔案信息資源共享平臺(tái)用戶使用的網(wǎng)絡(luò)環(huán)境包括電信、移動(dòng)、聯(lián)通等網(wǎng)絡(luò),如果檔案信息資源共享平臺(tái)僅部署在某個(gè)網(wǎng)絡(luò)環(huán)境下,其它網(wǎng)絡(luò)環(huán)境的用戶使用平臺(tái)由于跨運(yùn)營(yíng)商的原因訪問平臺(tái)就會(huì)比較慢,這樣很容易造成不同網(wǎng)絡(luò)環(huán)境的用戶使用系統(tǒng)的體驗(yàn)不同,從而最終導(dǎo)致部分非平臺(tái)部署網(wǎng)絡(luò)環(huán)境用戶的流失。另外,當(dāng)系統(tǒng)在某個(gè)瞬間有大量用戶同時(shí)使用系統(tǒng)時(shí),僅靠一臺(tái)服務(wù)器來提供服務(wù)也會(huì)出現(xiàn)傳輸性能問題。針對(duì)以上性能問題,可以采用CDN技術(shù)來解決相關(guān)傳輸問題。CDN的全稱是Content Delivery Network,即內(nèi)容分發(fā)網(wǎng)絡(luò)[9],它是一種基于Web的網(wǎng)絡(luò)體系結(jié)構(gòu),能夠更加快速有效地傳送Web內(nèi)容。其基本思路是盡可能避開互聯(lián)網(wǎng)上有可能影響數(shù)據(jù)傳輸速度和穩(wěn)定性的瓶頸和環(huán)節(jié),使內(nèi)容傳輸?shù)母?、更穩(wěn)定[10]。使用CDN技術(shù)后檔案信息資源共享平臺(tái)數(shù)據(jù)訪問與傳輸?shù)姆绞饺鐖D3所示:
通過以上方式對(duì)數(shù)據(jù)傳輸方面進(jìn)行優(yōu)化,數(shù)據(jù)中間傳輸過程可以有效減少傳輸?shù)男畔⒘?,有效減少無效的數(shù)據(jù)傳輸,同時(shí)在另網(wǎng)絡(luò)層面減輕帶寬壓力。
3 數(shù)據(jù)庫層面優(yōu)化
數(shù)據(jù)庫層面優(yōu)化主要處理檔案信息資源共享平臺(tái)數(shù)據(jù)操作指令到達(dá)數(shù)據(jù)庫服務(wù)器后進(jìn)行的優(yōu)化,主要目的是讓數(shù)據(jù)層面的檢索與操作均在數(shù)據(jù)庫上進(jìn)行處理,僅傳入數(shù)據(jù)處理需要的信息,在處理后也僅輸出用戶需要的數(shù)據(jù)信息,包括采用存儲(chǔ)過程、檢索服務(wù)加索引,大表數(shù)據(jù)采用分離加分區(qū)的處理方式。
3.1 采用存儲(chǔ)過程技術(shù)減少網(wǎng)絡(luò)流量。檔案信息資源共享平臺(tái)用戶在實(shí)際的系統(tǒng)使用過程中,數(shù)據(jù)操作是最頻繁的動(dòng)作,在實(shí)際的網(wǎng)絡(luò)中進(jìn)行數(shù)據(jù)交互時(shí)如果采用大量的SQL語句,主要存在如下問題:一是隨著用戶量的增長(zhǎng),數(shù)據(jù)的頻繁操作會(huì)使數(shù)據(jù)庫的執(zhí)行效率變差;二是復(fù)雜的SQL的傳輸會(huì)使網(wǎng)絡(luò)的通信量增加,通信速率會(huì)降低。
為了避免以上面臨的性能瓶頸,檔案信息資源共享平臺(tái)在實(shí)際的數(shù)據(jù)操作過程中采用存儲(chǔ)過程技術(shù),在使用存儲(chǔ)過程時(shí)只需用提供存儲(chǔ)過程名和必要的參數(shù)信息,這樣在一定程度上也可以減少網(wǎng)絡(luò)流量、減輕網(wǎng)絡(luò)負(fù)擔(dān)。由于存儲(chǔ)過程在創(chuàng)建時(shí)即在數(shù)據(jù)庫服務(wù)器上進(jìn)行了編譯并存儲(chǔ)在數(shù)據(jù)庫中,所以檔案信息資源共享平臺(tái)數(shù)據(jù)處理采用存儲(chǔ)過程運(yùn)行要比單個(gè)的SQL語句塊要快。
3.2 采用索引技術(shù)提升數(shù)據(jù)檢索效率??焖贆z索檔案信息是平臺(tái)用戶最基本的需求,平臺(tái)上線之初,由于用戶數(shù)據(jù)量有限,檔案信息檢索效率較高,隨著用戶數(shù)據(jù)量的增長(zhǎng),用戶需求的檔案信息也會(huì)出現(xiàn)爆炸式增長(zhǎng),信息檢索的效率會(huì)隨著數(shù)據(jù)量的增長(zhǎng)而降低。針對(duì)檢索效率性能瓶頸,檔案信息資源共享平臺(tái)采用了索引技術(shù)來提升數(shù)據(jù)檢索效率。索引分為聚簇索引和非聚簇索引兩種,聚簇索引是按照數(shù)據(jù)存放的物理位置為順序的,而非聚簇索引就不一樣了;聚簇索引能提高多行檢索的速度,而非聚簇索引對(duì)于單行的檢索很快,根據(jù)數(shù)據(jù)庫的功能有唯一索引、主鍵索引和聚集索引。檔案信息資源共享平臺(tái)在實(shí)際的應(yīng)用中將表的主鍵作為惟一索引,對(duì)于索引列是選擇數(shù)據(jù)類型較小且常作為檢索條件的字段作為索引字段。
3.3 采用分區(qū)表技術(shù)提高訪問速度。檔案信息資源共享平臺(tái)存儲(chǔ)檔案信息的表隨著用戶新增信息的增加會(huì)變得十分龐大,此時(shí)需要將大型表拆分為多個(gè)較小的表,表數(shù)據(jù)會(huì)按指定的規(guī)則分放到不同的文件里,把一個(gè)大的數(shù)據(jù)文件拆分為多個(gè)小文件,還可以把這些小文件放在不同的磁盤下由多個(gè)CPU進(jìn)行處理。通過使用數(shù)據(jù)分區(qū)技術(shù)可以大大提高訪問速度,分區(qū)可以顯著提高訪問大表時(shí)的性能,并且分區(qū)的存在對(duì)應(yīng)用系統(tǒng)是透明的[11]。對(duì)于檔案信息資源共享平臺(tái)大數(shù)據(jù)量的數(shù)據(jù)表進(jìn)行分區(qū)后,除了可以提高查詢效率,還可以對(duì)歷史數(shù)據(jù)進(jìn)行區(qū)分存檔。
4 平臺(tái)服務(wù)架構(gòu)層面優(yōu)化
平臺(tái)服務(wù)架構(gòu)層面優(yōu)化主要解決多用戶及并發(fā)用戶使用平臺(tái)時(shí)調(diào)用服務(wù)的瓶頸問題,檔案信息資源共享平臺(tái)終端用戶使用客戶端進(jìn)行數(shù)據(jù)操作都離不開對(duì)服務(wù)的調(diào)用,如何使用戶的體驗(yàn)達(dá)到最佳,即用戶使用系統(tǒng)過程中能夠使用最快的方式完成一次服務(wù)調(diào)用,這部分優(yōu)化具體思路為采用WCF架構(gòu),并對(duì)WCF進(jìn)行優(yōu)化,同時(shí)對(duì)于檔案信息的存儲(chǔ)與轉(zhuǎn)發(fā)采用MSMQ(微軟Message Queue)技術(shù),數(shù)據(jù)庫服務(wù)與應(yīng)用服務(wù)采用獨(dú)立布置的方式。
4.1 采用數(shù)據(jù)庫連接池規(guī)避平臺(tái)崩潰。檔案信息資源共享平臺(tái)終端用戶的包括傳統(tǒng)的個(gè)人計(jì)算機(jī)、平板及移動(dòng)終端,從系統(tǒng)開發(fā)與實(shí)現(xiàn)角度,這部分的優(yōu)化需要將數(shù)據(jù)操作部分進(jìn)行集中管理,所有平臺(tái)涉及到的基礎(chǔ)操作均采用調(diào)用一個(gè)集中服務(wù)集群,可以采用WCF(Windows Communication Foundation)技術(shù)作為系統(tǒng)的整體架構(gòu)。WCF是由微軟開發(fā)的一系列支持?jǐn)?shù)據(jù)通信的應(yīng)用程序框架, 在具體使用過程中,WCF自身最頻繁的操作為數(shù)據(jù)庫的訪問與操作,傳統(tǒng)的WCF的數(shù)據(jù)處理方式是調(diào)用數(shù)據(jù)庫操作類,每次調(diào)用服務(wù)需要進(jìn)行一次數(shù)據(jù)庫連接操作,數(shù)據(jù)庫連接操作是比較耗費(fèi)網(wǎng)絡(luò)的操作,采用該方式影響了整個(gè)應(yīng)用程序的伸縮性和健壯性,當(dāng)同時(shí)有大量用戶使用平臺(tái)并進(jìn)行數(shù)據(jù)庫操作時(shí),就會(huì)出現(xiàn)平臺(tái)卡死直至退出的現(xiàn)象,因此需要對(duì)該模塊進(jìn)行優(yōu)化。現(xiàn)有數(shù)據(jù)庫連接池的參數(shù)配置都是在初始化時(shí)一次設(shè)定,連接池在運(yùn)行過程中其值不會(huì)改變[12]。本系統(tǒng)采用的方式為將數(shù)據(jù)庫連接部分用連接池技術(shù)解決,數(shù)據(jù)庫連接池負(fù)責(zé)分配、管理和釋放數(shù)據(jù)庫連接,它允許應(yīng)用程序重復(fù)使用一個(gè)現(xiàn)有的數(shù)據(jù)庫連接,而不是再重新建立一個(gè)。連接池初始化后,檔案信息資源共享平臺(tái)終端用戶在實(shí)際調(diào)用WCF進(jìn)行數(shù)據(jù)操作時(shí),并非建立一個(gè)新的連接,而是從連接池中取出一個(gè)已建立的空閑連接對(duì)象,使用完畢后,用戶也并非將連接關(guān)閉,而是將連接放回連接池中,以供下一個(gè)請(qǐng)求訪問使用。采用該技術(shù)后,平臺(tái)在涉及到數(shù)據(jù)庫操作部分不會(huì)因?yàn)閿?shù)據(jù)連接資源緊張而導(dǎo)致平臺(tái)崩潰的情況出現(xiàn)。
4.2 采用MSMQ減少用戶等待時(shí)間。隨著檔案信息資源共享平臺(tái)用戶數(shù)量的增長(zhǎng),其并發(fā)請(qǐng)求會(huì)越來越多。如果采用傳統(tǒng)的同步技術(shù),同一操作的下一個(gè)請(qǐng)求的開始需要等待上一個(gè)請(qǐng)求的結(jié)束,現(xiàn)有的平臺(tái)用戶真實(shí)的需求是對(duì)系統(tǒng)性能的體驗(yàn),同步方式需要長(zhǎng)時(shí)間的等待,從而影響了系統(tǒng)的用戶體驗(yàn)過程。對(duì)于檔案信息資源共享平臺(tái),采用MSMQ技術(shù)(MSMQ全稱是Microsoft Message Queue,即微軟消息隊(duì)列)是一種利用隊(duì)列機(jī)制實(shí)現(xiàn)部件間或者是應(yīng)用程序間通信的技術(shù),其工作原理如下圖所示:
由圖4可以看出,消息的發(fā)送者把自己想要發(fā)送的信息放入一個(gè)容器,然后把它保存到一個(gè)系統(tǒng)公用空間的消息隊(duì)列中,采用消息隊(duì)列機(jī)制,發(fā)送方不必要擔(dān)心接收方是否啟動(dòng),是否發(fā)生故障等因素,只要消息成功發(fā)送出去,就可以認(rèn)為處理完成,本地或異地的消息接收程序再?gòu)脑撽?duì)列中取出發(fā)給它的消息進(jìn)行處理。采用該技術(shù)可以大大減少用戶的等待時(shí)間,由于采用了異步通信,無論是發(fā)送方還是接收方都不同等待對(duì)方返回成功消息,就可以執(zhí)行余下的代碼,大大提高了處理的能力,在信息傳遞過程中,具有故障恢復(fù)能力,MSMQ的消息傳遞機(jī)制使得通信的雙方具有不同的物理平臺(tái)成為可能。
4.3 采用服務(wù)集群來提升平臺(tái)的整體服務(wù)能力。隨著移動(dòng)互聯(lián)網(wǎng)應(yīng)用的廣泛普及以及檔案信息資源共享平臺(tái)用戶數(shù)量的增長(zhǎng),完成應(yīng)用程序自身與數(shù)據(jù)庫方面的優(yōu)化后,需要從硬件部署方面來提升檔案信息資源共享平臺(tái)的性能。該部分的優(yōu)化思路為采用WCF服務(wù)集群來提升平臺(tái)的整體服務(wù)能力,同時(shí)在數(shù)據(jù)處理上采用主備數(shù)據(jù)庫的架構(gòu)來完善數(shù)據(jù)庫服務(wù)能力以及確保數(shù)據(jù)庫服務(wù)的穩(wěn)定性,具體的部署方式如下圖所示:
如圖5所示,在軟件優(yōu)化完成后,通過增加硬件資源的方式來優(yōu)化平臺(tái)是最有效的性能優(yōu)化方式之一,該方式可以有效提升服務(wù)的分布式處理與并發(fā)處理能力。
經(jīng)過對(duì)檔案信息資源共享平臺(tái)架構(gòu)層面的優(yōu)化,采用WCF技術(shù)集中處理數(shù)據(jù)[13],在服務(wù)器層面優(yōu)化了服務(wù)的處理效率,在數(shù)據(jù)傳輸過程中,采用JSON方式進(jìn)行數(shù)據(jù)傳輸,對(duì)于文件資料的傳輸經(jīng)過gzip壓縮后進(jìn)行傳輸方式,大大減少了傳輸過程中的信息量,所有的應(yīng)用在實(shí)際的操作過程中均采用存儲(chǔ)過程的方式,既減少了調(diào)用服務(wù)傳輸?shù)男畔⒘?,又加快了?shù)據(jù)處理的效率。在經(jīng)常使用的平臺(tái)檔案信息檢索方面,數(shù)據(jù)庫層面關(guān)鍵字段加上了索引,從而大大提升了信息檢索的效率。多層面、全方位的平臺(tái)優(yōu)化使系統(tǒng)滿足了大數(shù)據(jù)時(shí)代的信息系統(tǒng)對(duì)性能的需求,在此基礎(chǔ)上更是滿足了終端用戶對(duì)平臺(tái)體驗(yàn)的需求,從而使平臺(tái)能夠真正滿足用戶對(duì)于檔案信息資源共享平臺(tái)的性能需求,真正實(shí)現(xiàn)檔案信息資源整合、信息發(fā)布、數(shù)據(jù)加工和提供檔案信息的檢索利用的一體化建設(shè)[14]。
*本文系2016年度教育部人文社會(huì)科學(xué)研究規(guī)劃基金項(xiàng)目《大數(shù)據(jù)時(shí)代檔案信息資源共享平臺(tái)構(gòu)建的研究》(項(xiàng)目編號(hào):16YJA870001)階段性成果。
參考文獻(xiàn):
[1]黃小忠.建設(shè)區(qū)域性高校檔案信息資源共享平臺(tái)的機(jī)制和途徑研究 [J].山西檔案,2015(4):77~80
[2]維克托·邁爾-舍恩伯格,肯尼斯·庫克耶合.大數(shù)據(jù)時(shí)代:生活、工作與思維的大變革[M].盛楊燕,周濤譯,杭州:浙江人民出版社,2013:4
[3]王運(yùn)彬,王小云,陳燕.檔案信息資源配置的目標(biāo)定位研究[J].檔案學(xué)研究,2012(6):36~38
[4]王萍,王毅,趙紅穎.圖書檔案數(shù)字化融合服務(wù)評(píng)價(jià)模型研究[J].圖書情報(bào)工作,2013,57(12):34~40
[5]孫光明,王碩.基于JSON的Ajax數(shù)據(jù)通信快速算法 [J]. 計(jì)算機(jī)應(yīng)用與軟件.2015, 32(1):263~266
[6]卞咸杰.基于WCF技術(shù)的檔案信息共享平臺(tái)數(shù)據(jù)傳輸模型設(shè)計(jì)與實(shí)現(xiàn)[J].檔案管理,2016 (2):25~28
[7]Qingting Wei, Jihong Guan, Shuigeng Zhou, Xin Wang.A New and Effective Approach to GML Documents Compression[J].Computer Journal.2014, 57:1727~1740
[8]宋剛,蔣孟奇,張?jiān)迫?,劉勝飛.基于共享存儲(chǔ)和Gzip的并行壓縮算法研究[J].計(jì)算機(jī)工程與設(shè)計(jì).2009, 30(4):781~784
[9]Pallis G,Vakali A.Insight and perspectives for content delivery networks[J].Commun ACM,2006,49(1):101~106.
[10]HA Alzoubi,S Lee,M Rabinovich,O Spatscheck,VDM Jacobus.A Practical Architecture for an Anycast CDN[J].Acm Transactions on the Web.2011, 5(4):2209~2220
[11]唐世偉,許璟龍,劉萬偉,榮海亮. 基于分區(qū)表的RAC優(yōu)化技術(shù)應(yīng)用[J].計(jì)算機(jī)系統(tǒng)應(yīng)用.2012, 21(3):190~192
[12]孟培超,胡圣波,舒恒,鄢富玉.基于ADO數(shù)據(jù)庫連接池優(yōu)化策略[J].計(jì)算機(jī)工程與設(shè)計(jì).2013, 34(5):1706~1710
[13]卞咸杰.基于WCF技術(shù)的跨平臺(tái)檔案信息資源共享平臺(tái)建設(shè)的研究 [J].檔案管理.2016(4):37~41
[14]吳加琪.構(gòu)建區(qū)域檔案信息資源共建共享平臺(tái)的思考[J].北京檔案.2014(8):24~27
(作者單位:鹽城師范學(xué)院 來稿日期:2016-08-20)