本發(fā)明涉及數(shù)據(jù)處理技術(shù)領(lǐng)域,具體而言,涉及一種數(shù)據(jù)處理的分布式系統(tǒng)及其數(shù)據(jù)處理方法。
背景技術(shù):
遠程智能服務中心系統(tǒng)能夠?qū)χ醒肟照{(diào)機組的運行數(shù)據(jù)進行遠程采集和遠程分析,及時為用戶提供機組日常維護保養(yǎng)信息,并能在機組產(chǎn)生故障時及時報警,從而有效減少機組故障產(chǎn)生幾率和杜絕故障擴大化,改善了中央空調(diào)機組多、管理分散、人機交互差等經(jīng)濟性及安全運行問題,為用戶提供更省力、省心、省錢的中央空調(diào)服務。
而隨著空調(diào)機組大數(shù)據(jù)時代的到來,系統(tǒng)需要監(jiān)控的工程機組也越來越多?,F(xiàn)有技術(shù)中的應用于遠程監(jiān)控中央空調(diào)機組的服務器分布式系統(tǒng)如圖1所示,該系統(tǒng)能夠?qū)χ醒肟照{(diào)機組的運行數(shù)據(jù)進行遠程采集和遠程分析,但是這個系統(tǒng)在擴展性、兼容性和安全性方面還不夠完善,有些情況未能考慮到。例如:圖1的系統(tǒng)中的客戶端直接連數(shù)據(jù)庫,會帶來一定的安全隱患。圖1的系統(tǒng)中的關(guān)系處理模塊使得GPRS模塊和客戶端關(guān)系處理的復雜性,且容易成為海量GPRS模塊和大量客戶端交互的瓶頸。此外,Client(客戶端)接入模塊采用socket連接,難以擴展兼容多種客戶端。比如:移動客戶端、桌面客戶端和第三方應用程序等。
針對現(xiàn)有技術(shù)中數(shù)據(jù)處理的分布式系統(tǒng)中擴展性、兼容性和安全性不夠完善的問題,目前尚未提出有效的解決方式。
技術(shù)實現(xiàn)要素:
本發(fā)明實施例提供了一種數(shù)據(jù)處理的分布式系統(tǒng)及其數(shù)據(jù)處理方法,以解決現(xiàn)有技術(shù)中數(shù)據(jù)處理的分布式系統(tǒng)中擴展性、兼容性和安全性不夠完善的問題。
根據(jù)本發(fā)明的一個方面,提供了一種數(shù)據(jù)處理的分布式系統(tǒng),包括監(jiān)控客戶端,待監(jiān)控機組,數(shù)據(jù)處理服務器群組以及數(shù)據(jù)庫,待監(jiān)控機組中設置有用于傳輸機組原始數(shù)據(jù)的GPRS模塊,其中,數(shù)據(jù)處理服務器群組中包括應用服務器、緩存服務器、數(shù)據(jù)訪問服務器以及接口服務器,其中,應用服務器與GPRS模塊以及緩存服務器相連,接口服務器分別與緩存服務器、數(shù)據(jù)庫以及監(jiān)控客戶端相連,數(shù)據(jù)訪問服務器與緩存服務器以及數(shù)據(jù)庫相連。
在一個實施例中,該系統(tǒng)還包括:負載均衡器,應用服務器為一個或多個,應用服務器通過負載均衡器與GPRS模塊連接。
在一個實施例中,應用服務器中包括用于與GPRS模塊相連接的DTU接入模塊,與DTU接入模塊相連接的數(shù)據(jù)解析模塊,DTU接入模塊和數(shù)據(jù)解析模塊分別與緩存服務器連接。
在一個實施例中,接口服務器中包括WCF中間集群模塊,WCF中間集群模塊分別與緩存服務器、數(shù)據(jù)庫以及監(jiān)控客戶端相連。
在一個實施例中,緩存服務器中包括Redis集群緩存模塊,Redis集群緩存模塊分別與DTU接入模塊、數(shù)據(jù)解析模塊以及WCF中間集群模塊相連。
在一個實施例中,數(shù)據(jù)訪問服務器中包括機組數(shù)據(jù)存儲集群模塊,機組數(shù)據(jù)存儲集群模塊分別與Redis集群緩存模塊以及數(shù)據(jù)庫相連。
在一個實施例中,數(shù)據(jù)訪問服務器中還包括工程信息同步模塊,工程信息同步模塊分別與Redis集群緩存模塊以及數(shù)據(jù)庫相連。
在一個實施例中,數(shù)據(jù)庫包括:數(shù)據(jù)庫集群模塊。
在一個實施例中,監(jiān)控客戶端包括:PC客戶端,和/或移動客戶端,和/或網(wǎng)頁客戶端,和/或第三方應用客戶端。
根據(jù)本發(fā)明的另一個方面,提供了一種應用于上述分布式系統(tǒng)中的數(shù)據(jù)處理方法,包括:應用服務器獲取GPRS模塊發(fā)送的待監(jiān)控機組的原始數(shù)據(jù);應用服務器對原始數(shù)據(jù)進行參數(shù)化處理,并將參數(shù)化處理后的數(shù)據(jù)發(fā)送至緩存服務器;數(shù)據(jù)訪問服務器從緩存服務器中獲取參數(shù)化后的數(shù)據(jù)并將參數(shù)化后的數(shù)據(jù)存儲至數(shù)據(jù)庫中;接口服務器從緩存服務器中獲取參數(shù)化后的數(shù)據(jù),并將參數(shù)化后的數(shù)據(jù)分發(fā)給對應的監(jiān)控客戶端。
在一個實施例中,分布式系統(tǒng)包括:負載均衡器,應用服務器為多個,應用服務器獲取GPRS模塊發(fā)送的待監(jiān)控機組的原始數(shù)據(jù),包括:GPRS模塊連接至負載均衡器;負載均衡器根據(jù)應用服務器的負載狀態(tài),將連接請求發(fā)送至負載最小的應用服務器;負載最小的應用服務器獲取GPRS模塊發(fā)送的待監(jiān)控機組的原始數(shù)據(jù)。
在一個實施例中,應用服務器對原始數(shù)據(jù)進行參數(shù)化處理,并將參數(shù)化處理后的數(shù)據(jù)發(fā)送至緩存服務器,包括:應用服務器中的DTU接入模塊接收GPRS模塊發(fā)送的待監(jiān)控機組的原始數(shù)據(jù);DTU接入模塊將接收的待監(jiān)控機組的原始數(shù)據(jù)發(fā)送至應用服務器中的數(shù)據(jù)解析模塊;數(shù)據(jù)解析模塊將待監(jiān)控機組的原始數(shù)據(jù)進行解析,并將解析完的數(shù)據(jù)發(fā)送至緩存服務器的Redis集群模塊。
在一個實施例中,數(shù)據(jù)訪問服務器從緩存服務器中獲取參數(shù)化后的數(shù)據(jù)并將參數(shù)化后的數(shù)據(jù)存儲至數(shù)據(jù)庫中,包括:數(shù)據(jù)訪問服務器中的機組數(shù)據(jù)存儲集群模塊根據(jù)預先與緩存服務器的Redis集群模塊建立的訂閱關(guān)系,從Redis集群模塊中獲取參數(shù)化后的數(shù)據(jù);機組數(shù)據(jù)存儲集群模塊將獲取的參數(shù)化后的數(shù)據(jù)存入數(shù)據(jù)庫中。
在一個實施例中,接口服務器從緩存服務器中獲取參數(shù)化后的數(shù)據(jù),并將參數(shù)化后的數(shù)據(jù)分發(fā)給對應的監(jiān)控客戶端,包括:接口服務器中的WCF中間集群模塊根據(jù)預先與緩存服務器的Redis集群模塊建立的訂閱關(guān)系,從Redis集群模塊中獲取參數(shù)化后的數(shù)據(jù);WCF中間集群模塊將獲取的參數(shù)化后的數(shù)據(jù)分發(fā)給對應的監(jiān)控客戶端。
在一個實施例中,數(shù)據(jù)訪問服務器中還包括工程信息同步模塊,在監(jiān)聽獲知緩存服務器的Redis集群模塊觸發(fā)工程信息修改時,工程信息同步模塊將修改的工程信息同步至數(shù)據(jù)庫。
在本發(fā)明的數(shù)據(jù)處理的分布式系統(tǒng)及其數(shù)據(jù)處理方法中,整個分布式系統(tǒng)將現(xiàn)有技術(shù)中機組GPRS模塊與客戶端通過關(guān)系處理模塊相連的方式替換成了緩存服務器利用其自身發(fā)布/訂閱特性的方式??蛻舳诵枰膫€機組數(shù)據(jù)則去在緩存服務器訂閱那個機組的數(shù)據(jù),不需要則不訂閱,這些訂閱的關(guān)系由緩存服務器自身去完成,應用服務器無需去記錄哪些客戶端監(jiān)控了哪些機組GPRS模塊,減少了機組GPRS模塊與客戶端關(guān)系處理的邏輯復雜性,因此降低了機組GPRS模塊與客戶端之間的耦合性,為后續(xù)單獨擴展應用服務器或者單獨擴展接口服務器提供了便利性。在擴展應用服務器時,無需考慮客戶端對其擴展造成的影響。在擴展接口服務器時,也無需考慮機組GPRS模塊對其擴展造成的影響。同時,接口服務器可設置所支持的接口方式(如WCF接口方式)來提供給各種類型的客戶端進行連接,方便后續(xù)能夠擴展更多類型的客戶端連接,并且,通過接口服務器可限制客戶端訪問數(shù)據(jù)庫的某些權(quán)限,提高系統(tǒng)安全性。本發(fā)明提供的方案可有效地解決現(xiàn)有技術(shù)中數(shù)據(jù)處理的分布式系統(tǒng)中擴展性、兼容性和安全性不夠完善的問題,提高數(shù)據(jù)處理的分布式系統(tǒng)中擴展性、兼容性和安全性。
附圖說明
此處構(gòu)成本申請的一部分的附圖用來提供對本發(fā)明的進一步理解,本發(fā)明的示意性實施例及其說明用于解釋本發(fā)明,并不構(gòu)成對本發(fā)明的不當限定。在附圖中:
圖1為現(xiàn)有技術(shù)中的一種數(shù)據(jù)處理的分布式系統(tǒng)框架圖;
圖2為本申請實施例提供的一種數(shù)據(jù)處理的分布式系統(tǒng)的系統(tǒng)框架圖;
圖3為本申請實施例提供的一種數(shù)據(jù)處理的分布式系統(tǒng)的數(shù)據(jù)處理方法的流程示意圖;以及
圖4為本申請實施例提供的一種數(shù)據(jù)處理方法的流程示意圖。
具體實施方式
為了使本技術(shù)領(lǐng)域的人員更好地理解本申請中的技術(shù)方案,下面將結(jié)合本申請實施例中的附圖,對本申請實施例中的技術(shù)方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本申請一部分實施例,而不是全部的實施例?;诒旧暾堉械膶嵤├?,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其它實施例,都應當屬于本申請保護的范圍。
本發(fā)明實施例中提供的數(shù)據(jù)處理的分布式系統(tǒng)包括監(jiān)控客戶端,待監(jiān)控機組,數(shù)據(jù)處理服務器群組以及數(shù)據(jù)庫,待監(jiān)控機組中設置有用于傳輸機組原始數(shù)據(jù)的GPRS模塊,其特征在于,數(shù)據(jù)處理服務器群組中包括應用服務器、緩存服務器、數(shù)據(jù)訪問服務器以及接口服務器,其中,應用服務器與GPRS模塊以及緩存服務器相連,接口服務器分別與緩存服務器、數(shù)據(jù)庫以及監(jiān)控客戶端相連,數(shù)據(jù)訪問服務器與緩存服務器以及數(shù)據(jù)庫相連。其中,優(yōu)選地,上述應用服務器、緩存服務器以及數(shù)據(jù)訪問服務器均可以為Linux服務器。
在本申請實施例中,為了將上述數(shù)據(jù)處理服務器群組中各個服務器的功能進行獨立,可以將每個服務器中的各個功能模塊化。具體地,圖2為本申請實施例提供的一種數(shù)據(jù)處理的分布式系統(tǒng)的框架圖。如圖2所示,該分布式系統(tǒng)還包括負載均衡器,具體實現(xiàn)時,可以將負載均衡器設置于一計算機中心。本發(fā)明實施例中提供的應用服務器可以為一個,也可以為多個(圖2示出應用服務器1至n的多個情況),應用服務器通過負載均衡器與GPRS模塊連接。
具體來說,應用服務器中包括用于與GPRS模塊相連接的DTU(Data Transfer Unit,數(shù)據(jù)傳輸單元)接入模塊,與DTU接入模塊相連接的數(shù)據(jù)解析模塊,DTU接入模塊和數(shù)據(jù)解析模塊分別與緩存服務器連接。
在一個實施方式中,接口服務器中包括WCF中間集群模塊,WCF中間集群模塊分別與緩存服務器、數(shù)據(jù)庫以及監(jiān)控客戶端相連。其中,優(yōu)選地,如圖2所示,監(jiān)控客戶端包括:PC客戶端,和/或移動客戶端,和/或網(wǎng)頁客戶端,和/或第三方應用客戶端。此處的WCF是由微軟開發(fā)的一系列支持數(shù)據(jù)通信的應用程序框架,可以稱為Windows通訊開發(fā)平臺。其整合了原有的windows通訊的.net Remoting,WebService,Socket的機制,并融合有HTTP和FTP的相關(guān)技術(shù),是Windows平臺上開發(fā)分布式應用最佳的實踐方式。
另外,在本申請實施例中,為了提高緩存服務器的性能,可以采用內(nèi)存數(shù)據(jù)庫Redis來進行機組原始數(shù)據(jù)的中轉(zhuǎn)和分發(fā)。因此,緩存服務器中包括Redis集群緩存模塊,Redis集群緩存模塊分別與DTU接入模塊、數(shù)據(jù)解析模塊以及WCF中間集群模塊相連。數(shù)據(jù)訪問服務器中包括機組數(shù)據(jù)存儲集群模塊,機組數(shù)據(jù)存儲集群模塊分別與Redis集群緩存模塊以及數(shù)據(jù)庫相連。
在本申請實施例中,Redis緩存模塊可以采用發(fā)布/訂閱的方式,機組數(shù)據(jù)存儲集群模塊和WCF中間件集群模塊都從Redis上訂閱解析后的數(shù)據(jù)。當Redis上接收到機組數(shù)據(jù)后,根據(jù)其自身發(fā)布/訂閱特性,會自動將機組數(shù)據(jù)自動推送給訂閱方。這樣的方式對后續(xù)分布式服務器大規(guī)模擴展中的數(shù)據(jù)分發(fā)功能起到至關(guān)重要的作用,多個程序模塊可連接在Redis緩存模塊上接收消息,從而可以解決了多個模塊之間多對多發(fā)送消息時需要多對多連接的問題。并且,Redis利用其自身發(fā)布/訂閱特性的方式,使得客戶端可以根據(jù)其需求訂閱數(shù)據(jù),需要哪個機組數(shù)據(jù)則去訂閱那個機組的數(shù)據(jù),不需要則不訂閱,這些訂閱的關(guān)系由Redis自身去完成,應用服務器無需去記錄哪些客戶端監(jiān)控了哪些機組GPRS模塊,減少了機組GPRS模塊與客戶端關(guān)系處理的邏輯復雜性,因此降低了機組GPRS模塊與客戶端之間的耦合性,為后續(xù)單獨擴展應用服務器或者單獨擴展WCF中間件集群提供了便利性。在擴展應用服務器時,無需考慮客戶端對其擴展造成的影響。同理在擴展WCF中間件時,也無需考慮機組GPRS模塊對其擴展造成的影響。
在現(xiàn)有技術(shù)中,待監(jiān)控機組的GPRS模塊與智能服務器中心的服務器之間往往是通過BMS協(xié)議(遠程監(jiān)控協(xié)議)進行通訊。該協(xié)議往往是由各個待監(jiān)控機組的顯示板控制器設計人員提供,并且需要將該協(xié)議寫成對應的程序加入到待監(jiān)控機組的顯示板控制器中才可以實現(xiàn)對該待監(jiān)控機組進行監(jiān)控。這樣,隨著待監(jiān)控機組數(shù)量的增加,將BMS協(xié)議寫成對應的程序的過程則顯得十分繁重。為了減輕系統(tǒng)維護人員的壓力,本申請實施例可以在GPRS模塊與DTU接入模塊之間采用Modbus協(xié)議進行數(shù)據(jù)傳輸,從而可以避免在待監(jiān)控機組的顯示板控制器中寫入與協(xié)議相對應的程序的步驟,從而可以減輕系統(tǒng)維護人員的壓力。
在本申請實施例中,可以采用面向?qū)ο罄^承的設計思想,自上而下將協(xié)議和待監(jiān)控機組的機型進行逐級繼承分類處理。首先可以由父類派生出Modbus類,然后Modbus類下又可以派生出多個機型子類,各個機型的共同邏輯處理部分可以放在Modbus類中處理,不同邏輯處理部分則可以放在各自的機型子類中處理。這樣就保證了無論是當前監(jiān)控的機組還是后續(xù)新開發(fā)的機組,其機組數(shù)據(jù)都可以被本申請?zhí)峁┑姆植际较到y(tǒng)兼容處理,其機組數(shù)據(jù)都可以被分布式系統(tǒng)監(jiān)控。
下面結(jié)合現(xiàn)有技術(shù)來對本實施例中提供的數(shù)據(jù)處理的分布式系統(tǒng)進行描述,以便更好理解本發(fā)明的優(yōu)勢所在:
現(xiàn)有技術(shù)中的分布式系統(tǒng)架構(gòu)如圖1所示,整個系統(tǒng)分為DTU接入、Client接入、關(guān)系處理、數(shù)據(jù)解析、Redis、數(shù)據(jù)訪問接口、數(shù)據(jù)存儲7個模塊。
現(xiàn)有技術(shù)中的系統(tǒng)架構(gòu)不夠完善,未曾考慮到客戶端的多樣性和系統(tǒng)擴展可能帶來的瓶頸。如圖1所示,關(guān)系處理模塊連著DTU接入模塊和Client接入模塊,是它們兩者之間通訊的橋梁。當機組GPRS模塊大量增加后,為保證服務器負載穩(wěn)定,DTU接入模塊也需要相應增加,同理,當客戶端大量增加后,Client接入模塊也需要相應增加。關(guān)系處理模塊中由于記錄了所有機組GPRS模塊與所有客戶端監(jiān)控的對應關(guān)系,所以難以做到擴展成多個關(guān)系處理模塊,于是成為了海量機組GPRS模塊與大量客戶端交互的瓶頸,抑制了整個系統(tǒng)的可擴展性。同時考慮到客戶端類型后續(xù)發(fā)展的多樣性,難以做到所有類型的客戶端都統(tǒng)一采用socket方式來連接Client接入模塊,且客戶端直接連接數(shù)據(jù)庫,也會給數(shù)據(jù)庫的數(shù)據(jù)安全帶來一些隱患。
對本圖2所示的本發(fā)明提供的系統(tǒng)框架,整個系統(tǒng)分為DTU接入、數(shù)據(jù)解析、Redis集群、機組數(shù)據(jù)存儲集群、工程信息同步、WCF中間件集群等6個模塊。整個系統(tǒng)工作流程圖如圖3所示:
首先由機組GPRS模塊連接負載均衡器,負載均衡器會根據(jù)各應用服務器的負載狀態(tài),將機組GPRS模塊的連接請求轉(zhuǎn)發(fā)到負載最輕的應用服務器的DTU接入模塊上;
在GPRS模塊與DTU接入模塊建立連接后,GPRS模塊將原始機組數(shù)據(jù)發(fā)給DTU接入模塊;
之后DTU接入模塊再將原始機組數(shù)據(jù)發(fā)給數(shù)據(jù)解析模塊,數(shù)據(jù)解析模塊對原始機組數(shù)據(jù)進行解析,解析完成后,將數(shù)據(jù)發(fā)布到Redis集群中。
機組數(shù)據(jù)存儲集群模塊和WCF中間件集群模塊都從Redis上訂閱解析后的數(shù)據(jù)。當Redis上接收到機組數(shù)據(jù)后,根據(jù)其自身發(fā)布/訂閱特性,會自動將機組數(shù)據(jù)自動推送給訂閱方。
機組數(shù)據(jù)存儲集群模塊獲取到機組數(shù)據(jù)后,將數(shù)據(jù)存入數(shù)據(jù)庫中。
WCF中間件集群獲取到機組數(shù)據(jù)后,將數(shù)據(jù)分發(fā)給客戶端。
整個系統(tǒng)將前期機組GPRS模塊與客戶端通過關(guān)系處理模塊相連的方式替換成了Redis利用其自身發(fā)布/訂閱特性的方式。客戶端需要哪個機組數(shù)據(jù)則去訂閱那個機組的數(shù)據(jù),不需要則不訂閱,這些訂閱的關(guān)系由Redis自身去完成,應用服務器無需去記錄哪些客戶端監(jiān)控了哪些機組GPRS模塊,減少了機組GPRS模塊與客戶端關(guān)系處理的邏輯復雜性,因此降低了機組GPRS模塊與客戶端之間的耦合性,為后續(xù)單獨擴展應用服務器或者單獨擴展WCF中間件集群提供了便利性。在擴展應用服務器時,無需考慮客戶端對其擴展造成的影響。同理在擴展WCF中間件時,也無需考慮機組GPRS模塊對其擴展造成的影響。
系統(tǒng)通過通用的WCF接口方式來提供給各種類型的客戶端進行連接,而不是以socket的方式,這是為了方便后續(xù)能夠擴展更多類型的客戶端連接。同時前期客戶端可以直接連接數(shù)據(jù)庫,如果由第三方開發(fā)的程序來連接數(shù)據(jù)庫時,會對數(shù)據(jù)的安全會帶來一定的隱患,所以本發(fā)明的系統(tǒng)通過WCF接口的方式,限制了客戶端訪問數(shù)據(jù)庫的某些權(quán)限,提升了系統(tǒng)數(shù)據(jù)的安全性。
實施例2
在本申請實施例2中還提供一種應用于上述數(shù)據(jù)處理的分布式系統(tǒng)的數(shù)據(jù)處理的方法。圖4為本申請實施例提供的一種數(shù)據(jù)處理的方法流程圖。雖然下文描述流程包括以特定順序出現(xiàn)的多個操作,但是應該清楚了解,這些過程可以包括更多或更少的操作,這些操作可以順序執(zhí)行或并行執(zhí)行(例如使用并行處理器或多線程環(huán)境)。如圖4所示,方法可以包括S1-S4:
S1:應用服務器獲取GPRS模塊發(fā)送的待監(jiān)控機組的原始數(shù)據(jù);
待監(jiān)控機組中的原始數(shù)據(jù)可以通過其上的GPRS模塊進行傳輸,GPRS模塊可以將原始數(shù)據(jù)發(fā)送至應用服務器中的DTU接入模塊。在一個可選的實施方式中,分布式系統(tǒng)包括:負載均衡器,應用服務器為多個,在實現(xiàn)上述S1時,GPRS模塊連接至負載均衡器;負載均衡器根據(jù)應用服務器的負載狀態(tài),將連接請求發(fā)送至負載最小的應用服務器;負載最小的應用服務器獲取GPRS模塊發(fā)送的待監(jiān)控機組的原始數(shù)據(jù)。
S2:應用服務器對原始數(shù)據(jù)進行參數(shù)化處理,并將參數(shù)化處理后的數(shù)據(jù)發(fā)送至緩存服務器;
具體實現(xiàn)時,應用服務器中的DTU接入模塊接收GPRS模塊發(fā)送的待監(jiān)控機組的原始數(shù)據(jù);DTU接入模塊將接收的待監(jiān)控機組的原始數(shù)據(jù)發(fā)送至應用服務器中的數(shù)據(jù)解析模塊;數(shù)據(jù)解析模塊將待監(jiān)控機組的原始數(shù)據(jù)進行解析,并將解析完的數(shù)據(jù)發(fā)送至緩存服務器的Redis集群模塊。
S3:數(shù)據(jù)訪問服務器從緩存服務器中獲取參數(shù)化后的數(shù)據(jù)并將參數(shù)化后的數(shù)據(jù)存儲至數(shù)據(jù)庫中;
具體實現(xiàn)時,數(shù)據(jù)訪問服務器中的機組數(shù)據(jù)存儲集群模塊根據(jù)預先與緩存服務器的Redis集群模塊建立的訂閱關(guān)系,從Redis集群模塊中獲取參數(shù)化后的數(shù)據(jù);機組數(shù)據(jù)存儲集群模塊將獲取的參數(shù)化后的數(shù)據(jù)存入數(shù)據(jù)庫中。
S4:接口服務器從緩存服務器中獲取參數(shù)化后的數(shù)據(jù),并將參數(shù)化后的數(shù)據(jù)分發(fā)給對應的監(jiān)控客戶端。
具體實現(xiàn)時,接口服務器中的WCF中間集群模塊根據(jù)預先與緩存服務器的Redis集群模塊建立的訂閱關(guān)系,從Redis集群模塊中獲取參數(shù)化后的數(shù)據(jù);WCF中間集群模塊將獲取的參數(shù)化后的數(shù)據(jù)分發(fā)給對應的監(jiān)控客戶端。
此外,作為優(yōu)選,數(shù)據(jù)訪問服務器中還包括工程信息同步模塊,在監(jiān)聽獲知緩存服務器的Redis集群模塊觸發(fā)工程信息修改時,工程信息同步模塊將修改的工程信息同步至數(shù)據(jù)庫。
在本發(fā)明提供的優(yōu)選的實施方式中,整個分布式系統(tǒng)將現(xiàn)有技術(shù)中機組GPRS模塊與客戶端通過關(guān)系處理模塊相連的方式替換成了緩存服務器利用其自身發(fā)布/訂閱特性的方式。客戶端需要哪個機組數(shù)據(jù)則去在緩存服務器訂閱那個機組的數(shù)據(jù),不需要則不訂閱,這些訂閱的關(guān)系由緩存服務器自身去完成,應用服務器無需去記錄哪些客戶端監(jiān)控了哪些機組GPRS模塊,減少了機組GPRS模塊與客戶端關(guān)系處理的邏輯復雜性,因此降低了機組GPRS模塊與客戶端之間的耦合性,為后續(xù)單獨擴展應用服務器或者單獨擴展接口服務器提供了便利性。在擴展應用服務器時,無需考慮客戶端對其擴展造成的影響。在擴展接口服務器時,也無需考慮機組GPRS模塊對其擴展造成的影響。同時,接口服務器可設置所支持的接口方式(如WCF接口方式)來提供給各種類型的客戶端進行連接,方便后續(xù)能夠擴展更多類型的客戶端連接,并且,通過接口服務器可限制客戶端訪問數(shù)據(jù)庫的某些權(quán)限,提高系統(tǒng)安全性。本發(fā)明提供的方案可有效地解決現(xiàn)有技術(shù)中數(shù)據(jù)處理的分布式系統(tǒng)中擴展性、兼容性和安全性不夠完善的問題,提高數(shù)據(jù)處理的分布式系統(tǒng)中擴展性、兼容性和安全性。
以上所述僅為本發(fā)明的優(yōu)選實施例而已,并不用于限制本發(fā)明,對于本領(lǐng)域的技術(shù)人員來說,本發(fā)明實施例可以有各種更改和變化。凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進等,均應包含在本發(fā)明的保護范圍之內(nèi)。