卞顯福
(中國科學(xué)技術(shù)大學(xué) 軟件學(xué)院,安徽 合肥 230051)
MongoDB分布式集群去中心化在整個架構(gòu)設(shè)計中是一項重要的技術(shù),通過網(wǎng)絡(luò)通信協(xié)議來選擇最優(yōu)的路徑,讓各個節(jié)點能夠獨立完成任務(wù)調(diào)度,而不是每次云數(shù)據(jù)調(diào)度都要通過中心節(jié)點來完成,對整個網(wǎng)絡(luò)代理和MongoDB分布式集群云數(shù)據(jù)管理起到云數(shù)據(jù)傳輸和數(shù)據(jù)集優(yōu)化的作用。網(wǎng)絡(luò)節(jié)點調(diào)度的過程要充分考慮網(wǎng)絡(luò)信息存儲的密鑰和網(wǎng)絡(luò)地址,通過處理節(jié)點的請求使云數(shù)據(jù)準(zhǔn)確到達(dá)目標(biāo)地址。在MongoDB分布式集群網(wǎng)絡(luò)化管理中要充分考慮一致性,通過對網(wǎng)絡(luò)節(jié)點的存儲模式分析,保證各個節(jié)點能夠獲取有效的密鑰,對網(wǎng)絡(luò)云數(shù)據(jù)存儲優(yōu)化具有關(guān)鍵性作用。在設(shè)計過程中要充分考慮出現(xiàn)添加節(jié)點和刪除節(jié)點的狀況,在不同的MongoDB分布式集群中進(jìn)行云數(shù)據(jù)集管理,通過緩存、平衡分片、偏度式管理實現(xiàn)對云數(shù)據(jù)集的優(yōu)化,形成MongoDB分布式集群鏈路調(diào)度時所需要的云數(shù)據(jù)信息。算法設(shè)計過程中要充分考慮最大片平衡的問題,通過不同的物理節(jié)點的映射,產(chǎn)生多個虛擬節(jié)點,比如產(chǎn)生n個虛擬節(jié)點,如果有m個節(jié)點產(chǎn)生映射關(guān)系,那么一共可以產(chǎn)生m×n個云數(shù)據(jù)傳輸方案,能夠在虛擬節(jié)點選擇的過程中進(jìn)行平衡化云數(shù)據(jù)傳輸管理。集群數(shù)據(jù)路由和分片算法設(shè)計在MongoDB分布式集群管理中是重要的策略,需要實現(xiàn)更高效率的通信和節(jié)點云數(shù)據(jù)調(diào)度,需要整個分片MongoDB分布式集群基本結(jié)構(gòu)的支持,通過MongoDB分布式集群節(jié)點管理達(dá)到路徑優(yōu)化和節(jié)點擴(kuò)展的目標(biāo)。MongoDB分布式集群設(shè)計中集中式代理分片是一種重要的方法,通過節(jié)點不斷地接收客戶端傳輸?shù)姆?wù)請求,并且通過節(jié)點控制系統(tǒng),對不同的云數(shù)據(jù)進(jìn)行響應(yīng),最終能夠把云數(shù)據(jù)傳輸?shù)娇蛻舳恕9?jié)點云數(shù)據(jù)傳輸?shù)倪^程中會產(chǎn)生一些失敗的Redis節(jié)點,對失敗的節(jié)點進(jìn)行標(biāo)簽式管理,確保失敗的節(jié)點能夠自動生成一個主題標(biāo)簽,為查找失敗原因和后期云數(shù)據(jù)補發(fā)提供云數(shù)據(jù)支持。
MongoDB分布式集群節(jié)點設(shè)計過程要對負(fù)載情況進(jìn)行綜合判斷,均衡負(fù)載問題一直影響整個MongoDB分布式集群的工作效率和管理,應(yīng)實現(xiàn)云數(shù)據(jù)節(jié)點和MongoDB分布式集群的均衡負(fù)載,保證各個節(jié)點都能發(fā)揮各自的功能。從均衡負(fù)載的設(shè)計模式看,它是一個復(fù)雜的過程,也是一個模糊的概念。
從分布式管理的角度出發(fā)可以通過不同的算法路徑,盡量把云數(shù)據(jù)群均衡地分配到不同的節(jié)點上,實現(xiàn)節(jié)點與節(jié)點之間的負(fù)載均衡,提高服務(wù)端和客戶端的云數(shù)據(jù)傳輸效率[1]。負(fù)載均衡設(shè)計的過程中要考慮不同的事務(wù)分配問題,對不同的事務(wù)進(jìn)行監(jiān)控和監(jiān)督管理,對出現(xiàn)異常的事務(wù)要及時調(diào)整,確保事務(wù)處理的過程中能夠在不同節(jié)點實現(xiàn)協(xié)調(diào)管理。均衡負(fù)載管理中要從不同靜態(tài)位置和動態(tài)位置角度出發(fā),對客戶端發(fā)出的申請地址進(jìn)行具體分析,通過類的派生等手段,實現(xiàn)主云數(shù)據(jù)服務(wù)器對網(wǎng)絡(luò)協(xié)議進(jìn)行負(fù)載狀況分析,保證主服務(wù)器通信負(fù)載能夠得到優(yōu)化。
云數(shù)據(jù)發(fā)送傳輸、接收是一個整體的過程。云數(shù)據(jù)MongoDB分布式集群在設(shè)計過程中要考慮不同服務(wù)器的功能,文件服務(wù)器、Web服務(wù)器、云數(shù)據(jù)服務(wù)器等用戶不斷變化,在用戶云數(shù)據(jù)量不斷增加的情況下,需要對不同云數(shù)據(jù)庫服務(wù)器的模型進(jìn)行優(yōu)化,以達(dá)到云數(shù)據(jù)管理優(yōu)化的目標(biāo)[2]。把云數(shù)據(jù)分配到不同的動態(tài)云數(shù)據(jù)庫服務(wù)器的地址中,然后再備份到不同的機架中,具體實現(xiàn)對路徑的優(yōu)化,達(dá)到均衡負(fù)載的目的。均衡負(fù)載設(shè)計的過程要對最大空間問題進(jìn)行分析,云數(shù)據(jù)傳輸?shù)讲煌墓?jié)點,需要對云數(shù)據(jù)服務(wù)的節(jié)點空間進(jìn)行計算,如果空間滿足要求,則進(jìn)行相應(yīng)的空間管理和云數(shù)據(jù)服務(wù),如果空間不能夠滿足條件,需要通過空間管理優(yōu)化算法選擇最優(yōu)空間存儲管理,以實現(xiàn)云數(shù)據(jù)能夠存儲的目標(biāo)。同時在云數(shù)據(jù)傳輸中要對各個節(jié)點的最大空閑進(jìn)行算法研究,保證云數(shù)據(jù)到達(dá)各個節(jié)點的處理能力能夠滿足目標(biāo)算法的要求。在最大空間管理和最優(yōu)空閑算法設(shè)計過程中要從可用空間、鏈接云數(shù)據(jù)量出發(fā),對單點失敗情況進(jìn)行優(yōu)化考慮,確保每個請求都能順利到達(dá)有效的云數(shù)據(jù)節(jié)點,對整個MongoDB分布式集群管理功能完善和任務(wù)調(diào)度進(jìn)行優(yōu)化處理。
MongoDB分布式集群控制管理的過程中要對各個節(jié)點的云數(shù)據(jù)交互情況進(jìn)行統(tǒng)計,形成交互云數(shù)據(jù)信息管理系統(tǒng),對整個云數(shù)據(jù)集進(jìn)行路徑優(yōu)化和資源狀況分析。分布式云數(shù)據(jù)庫方案在整個MongoDB分布式集群管理中起到關(guān)鍵性作用,MongoDB分布式集群設(shè)計管理的過程要利用分片技術(shù)的演化過程,對云數(shù)據(jù)進(jìn)行共享管理。具體計算公式為:P=(1-M)xS(其中P為共享效率;1-m為不發(fā)生故障率;x為運行次數(shù);S為節(jié)點數(shù))。
在MongoDB分布式集群管理中云數(shù)據(jù)通信通常采用證書發(fā)送的方式,當(dāng)客戶端發(fā)送云數(shù)據(jù)證書時,會產(chǎn)生不同的CA確認(rèn)信息,服務(wù)器端收到證書并且產(chǎn)生CA確認(rèn)信息后,才能建立云數(shù)據(jù)連接,從而能夠生成云數(shù)據(jù)私鑰。
通過私鑰處理形成具有云數(shù)據(jù)處理能力的云數(shù)據(jù)公鑰,服務(wù)器接收到相關(guān)聯(lián)的云數(shù)據(jù)公鑰對云數(shù)據(jù)進(jìn)行處理,之后通常是進(jìn)行云數(shù)據(jù)保護(hù)處理,然后傳輸給客戶端,從而完成一次云數(shù)據(jù)信息發(fā)送、加密、建立連接、返回、確認(rèn)過程。云數(shù)據(jù)MongoDB分布式集群管理要對角色進(jìn)行權(quán)限管理,不同的角色具有不同的權(quán)限,因此其狀態(tài)信息對整個MongoDB分布式集群管理十分重要,因此在算法設(shè)計中要對其各個狀態(tài)進(jìn)行初始化,然后對各個狀態(tài)進(jìn)行跟蹤和調(diào)控。通過分布式技術(shù)對各個云數(shù)據(jù)的狀態(tài)進(jìn)行分析,客戶端不斷地向服務(wù)端發(fā)送指令,保證云數(shù)據(jù)傳輸過程中的一致性。
從用戶角度出發(fā),用戶角色分為MongoDB分布式集群內(nèi)的用戶和MongoDB分布式集群外的用戶,MongoDB分布式集群外的用戶要想獲取相關(guān)云數(shù)據(jù)信息通常是通過HTTP請求完成目標(biāo)[3]。而MongoDB分布式集群內(nèi)的用戶獲取信息通常是通過字段定位、掛載、目錄定位等手段獲取相關(guān)的訪問權(quán)限。MongoDB分布式集群用戶與用戶之間的通信要從權(quán)限管理出發(fā),對不同的用戶綁定不同的權(quán)限,發(fā)送云數(shù)據(jù)之后會通過權(quán)限認(rèn)證獲取相關(guān)的配置信息和代理云數(shù)據(jù)服務(wù)信息,驗證成功后獲取相關(guān)的CA證書和私鑰,最后生成代理的私鑰和證書。云數(shù)據(jù)證書獲取之后要對MongoDB分布式集群進(jìn)行設(shè)置和管理,將用戶信息添加到MongoDB分布式集群中,并將用戶信息與MongoDB分布式集群管理信息綁定。整個MongoDB分布式集群接收到云數(shù)據(jù)信息之后啟動功能,通過生成的私鑰進(jìn)行云數(shù)據(jù)通信,產(chǎn)生云數(shù)據(jù)配置信息,最后釋放對云數(shù)據(jù)資源的操作權(quán)。MongoDB分布式集群通信過程的優(yōu)化,要從MongoDB分布式集群通信客戶端和服務(wù)器出發(fā),服務(wù)器端在云數(shù)據(jù)通過過程中對相關(guān)日志云數(shù)據(jù)信息進(jìn)行統(tǒng)計分析,客戶端獲取證書之后在各個node上進(jìn)行云數(shù)據(jù)通信,保證每個云數(shù)據(jù)信息的身份都是正確的。
客戶端和服務(wù)器端云數(shù)據(jù)信息通信時要對不同的云數(shù)據(jù)狀態(tài)進(jìn)行配置。通過創(chuàng)建對應(yīng)的云數(shù)據(jù)密鑰,實現(xiàn)云數(shù)據(jù)的傳輸安全,添加用戶云數(shù)據(jù)信息時需要對上下文信息進(jìn)行判斷,確保用戶和MongoDB分布式集群綁定信息能夠符合云數(shù)據(jù)通信的要求。MongoDB分布式集群云數(shù)據(jù)信息管理可以利用負(fù)載均衡算法對Web服務(wù)器進(jìn)行負(fù)載分配,通過緩存云數(shù)據(jù)信息等手段,實現(xiàn)對云數(shù)據(jù)庫的共享,保證云數(shù)據(jù)信息處理能夠在一個均衡負(fù)載的環(huán)境下進(jìn)行。具體均衡負(fù)載模型為:
其中,v為均衡性;i,j分別為字段云數(shù)據(jù);P為故障率;n為節(jié)點數(shù)。
需要對內(nèi)存云數(shù)據(jù)庫進(jìn)行優(yōu)化,從云數(shù)據(jù)庫的可擴(kuò)展性出發(fā),讓分布式技術(shù)在各個節(jié)點上產(chǎn)生多個云數(shù)據(jù)信息,實現(xiàn)節(jié)點的云數(shù)據(jù)通信功能,提高云數(shù)據(jù)持久性、可伸縮性、吞吐量[4]。在實際設(shè)計過程中節(jié)點管理是整個MongoDB分布式集群平臺實現(xiàn)均衡負(fù)載云數(shù)據(jù)通信的關(guān)鍵,節(jié)點的監(jiān)控管理需要從云數(shù)據(jù)處理角度出發(fā),需要考慮內(nèi)存泄露和壓力等方面的情況發(fā)生。節(jié)點路由優(yōu)化和管理中經(jīng)常出現(xiàn)增加節(jié)點情況,此時不僅要對增加的節(jié)點進(jìn)行管理,還需要對增加的節(jié)點進(jìn)行新功能優(yōu)化。對增加節(jié)點的路徑進(jìn)行算法優(yōu)化,保證節(jié)點之間的通信符合整個鏈路的要求,同時要對相關(guān)的節(jié)點進(jìn)行備份處理,對各個節(jié)點進(jìn)行精細(xì)化調(diào)度。增加節(jié)點的過程中可以通過復(fù)制等手段快速添加節(jié)點,同時要對節(jié)點和節(jié)點之間的連接進(jìn)行動態(tài)監(jiān)測,避免因網(wǎng)絡(luò)斷開造成云數(shù)據(jù)信息的丟失,達(dá)到云數(shù)據(jù)服務(wù)功能完成和效率最大化目標(biāo)。節(jié)點的穩(wěn)定性和擴(kuò)展性是整個MongoDB分布式集群監(jiān)控平臺設(shè)計中要考慮的兩個重要指標(biāo),通過對日志云數(shù)據(jù)信息進(jìn)行管理,對網(wǎng)絡(luò)通信中通道的路徑進(jìn)行優(yōu)化,實現(xiàn)對整個節(jié)點狀態(tài)的動態(tài)監(jiān)測,讓MongoDB分布式集群在優(yōu)化環(huán)境下運行。任務(wù)節(jié)點在執(zhí)行相關(guān)功能時,需要實現(xiàn)遠(yuǎn)程調(diào)用功能,通過RPC等手段實現(xiàn)對整個MongoDB分布式集群的有效管理。
MongoDB分布式集群管理的過程中,需要對高可用性和負(fù)載均衡進(jìn)行雙向管理,為解決高可用性和負(fù)載均衡問題,需要對技術(shù)路線進(jìn)行優(yōu)化,同時在MongoDB分布式集群內(nèi)部形成設(shè)備冗余機制,如果系統(tǒng)某臺設(shè)備發(fā)生故障,需要立即啟動備用設(shè)備,同時進(jìn)行故障預(yù)警,備用機器能夠第一時間接替相關(guān)任務(wù)[5]。MongoDB分布式集群管理過程中通常采取雙機熱備的管理模式。通過網(wǎng)格計算方式對MongoDB分布式集群的各個節(jié)點協(xié)同工作狀況實施動態(tài)管理。多用戶是MongoDB分布式集群設(shè)備運行中的一個重要特點,對多用戶管理要從系統(tǒng)層出發(fā),對整個用戶狀態(tài)信息進(jìn)行實時監(jiān)測,并發(fā)性處理任務(wù)可以提高M(jìn)ongoDB分布式集群管理效率,同時并發(fā)性處理過程中要對系統(tǒng)資源進(jìn)行優(yōu)化,保證各個資源能夠得到合理利用,實現(xiàn)資源調(diào)度均衡。系統(tǒng)MongoDB分布式集群在處理相關(guān)任務(wù)時,需要對每個部署的應(yīng)用進(jìn)行研究,防止節(jié)點在發(fā)生故障時無法進(jìn)行任務(wù)轉(zhuǎn)移。MongoDB分布式集群應(yīng)用架構(gòu)設(shè)計中,需要從云數(shù)據(jù)庫服務(wù)器和Web服務(wù)器進(jìn)行信息配置,確保每個消息能夠得到實時發(fā)送。從系統(tǒng)優(yōu)化出發(fā),對調(diào)度器、計算節(jié)點、存儲系統(tǒng)、網(wǎng)絡(luò)進(jìn)行綜合任務(wù)管理,網(wǎng)絡(luò)通信是基礎(chǔ)性工作,也是保證各個節(jié)點在計算單元能夠完成任務(wù)的重要支撐,通過網(wǎng)絡(luò)連接和通信,各個節(jié)點應(yīng)用程序能夠發(fā)揮作用,同時實現(xiàn)協(xié)同工作。
一個高速、可靠的網(wǎng)絡(luò)可以對MongoDB分布式集群的云數(shù)據(jù)傳輸和命令控制進(jìn)行優(yōu)化,保證各個進(jìn)度和狀態(tài)能夠正常運行。通過以太網(wǎng)、InfiniBand技術(shù)對整個MongoDB分布式集群系統(tǒng)進(jìn)行網(wǎng)絡(luò)調(diào)度。MongoDB分布式集群系統(tǒng)運行中需要利用存儲系統(tǒng)對云數(shù)據(jù)進(jìn)行存儲,在大規(guī)模云數(shù)據(jù)處理中要采取高速、高容量的云數(shù)據(jù)存儲系統(tǒng),保證云數(shù)據(jù)管理能夠更加優(yōu)化。MongoDB分布式集群調(diào)度過程中要從任務(wù)分配、任務(wù)調(diào)度出發(fā),對各個節(jié)點的任務(wù)執(zhí)行情況和資源分配狀況進(jìn)行計算,讓計算節(jié)點能夠均衡負(fù)載,同時還需要考慮任務(wù)的依賴狀況和優(yōu)先級,讓任務(wù)調(diào)度在任務(wù)依賴和優(yōu)先級算法下實現(xiàn)動態(tài)分配。隨著MongoDB分布式集群技術(shù)的綜合應(yīng)用,MongoDB分布式集群設(shè)計過程中要從多設(shè)備協(xié)同工作的角度出發(fā),保證云數(shù)據(jù)傳輸效率、計算能力、存儲能力、運算速度等,保證系統(tǒng)的可靠性和可擴(kuò)展性,通過科學(xué)計算和大量云數(shù)據(jù)處理,讓MongoDB分布式集群任務(wù)調(diào)度符合任務(wù)管理要求。MongoDB分布式集群系統(tǒng)多設(shè)備運行在一起形成系統(tǒng),系統(tǒng)設(shè)計中要從容錯性、高性能、可用性出發(fā),保證各個節(jié)點的容錯功能得到實現(xiàn),MongoDB分布式集群和分布式管理模式結(jié)合在一起,形成多個子任務(wù)的管理模式,讓各個節(jié)點的算力得到提高。MongoDB分布式集群在運行過程中一方面要考慮云數(shù)據(jù)處理的速度,同時還需要考慮系統(tǒng)的穩(wěn)定性,在可擴(kuò)展性方面要進(jìn)行優(yōu)化,讓整個系統(tǒng)更加可靠。MongoDB分布式集群設(shè)備運行中要對主機的機器狀態(tài)進(jìn)行綜合檢測,同時實現(xiàn)其和Slave機器的通信。MongoDB分布式集群通信速度為:
其中,S為通信速度;M,N分別為不同的任務(wù)調(diào)度;P為故障率;i,j為節(jié)點數(shù)。
MongoDB分布式集群并發(fā)處理能力是衡量系統(tǒng)可靠性的重要依據(jù),因此在MongoDB分布式集群管理過程中要從向上擴(kuò)容、高性能角度出發(fā),對云數(shù)據(jù)庫服務(wù)器進(jìn)行優(yōu)化,保證橫向擴(kuò)展和向外擴(kuò)展功能都能實現(xiàn)。為增加MongoDB分布式集群系統(tǒng)的服務(wù)能力和綜合性能,需要對多任務(wù)調(diào)度系統(tǒng)進(jìn)行技術(shù)架構(gòu)設(shè)計和優(yōu)化,提高M(jìn)ongoDB分布式集群系統(tǒng)的響應(yīng)能力,對請求和響應(yīng)形成動態(tài)管理,提高系統(tǒng)的并發(fā)消息處理效率。不同的節(jié)點可以設(shè)置不同的權(quán)重值,對收到的云數(shù)據(jù)請求進(jìn)行權(quán)重值比較,然后根據(jù)資源利用狀況分配云數(shù)據(jù)處理節(jié)點。MongoDB分布式集群服務(wù)能力與各個節(jié)點的業(yè)務(wù)協(xié)調(diào)具有很大的關(guān)系,因此通過調(diào)度策略能實現(xiàn)任務(wù)的動態(tài)平衡。負(fù)載均衡管理可以通過NAT模式對網(wǎng)絡(luò)地址和節(jié)點進(jìn)行訪問控制,保證云數(shù)據(jù)處理端口能夠高效尋址。均衡負(fù)載過程中要通過路由選擇模式,對各個云數(shù)據(jù)流進(jìn)行云數(shù)據(jù)量分析,然后修改目標(biāo)IP地址,根據(jù)MAC地址達(dá)到目標(biāo)。云數(shù)據(jù)節(jié)點要對中心節(jié)點發(fā)送的云數(shù)據(jù)服務(wù)進(jìn)行識別,從而能夠獲取節(jié)點所需要的云數(shù)據(jù)信息。