本發明涉及服務器技術領域,特別是涉及一種多路服務器系統及用于提高其穩定性的方法。
背景技術:
隨著科學技術的發展,世界如今已經進入了信息時代。網絡的普及加速了信息的傳輸和處理。
服務器是一種提供計算服務的設備,其響應服務請求,并進行處理,即承擔服務并且保障服務能力。現如今的多路服務器系統架構,基本上只通過一個多路服務器計算系統進行服務,而用戶在應用該服務器系統架構時,難以避免服務器計算系統出現故障的情況,這時候服務器計算系統就會停止工作,需要檢修人員進行維修。這會造成用戶的應用的停滯,甚至會對用戶造成很大的損失。
因此,如何在用戶應用服務器系統時,保證用戶的應用及程序的穩定運行,是本領域技術人員目前需要解決的技術問題。
技術實現要素:
本發明的目的是提供一種多路服務器系統及用于提高其穩定性的方法,可以在用戶應用服務器系統時,保證用戶的應用及程序的穩定運行。
為解決上述技術問題,本發明提供了如下技術方案:
一種多路服務器系統,包括:第一多路計算子系統和第二多路計算子系統,所述第一多路計算子系統和所述第二多路計算子系統結構相同,各多路計算子系統的各計算單元均對應連接一個信息核對單元,所述第一多路計算子系統中的各計算單元和所述第二多路計算子系統中的對應計算單元連接并各自獨立處理相同的數據和指令,所述第一多路計算子系統的各計算單元對應的信息核對單元和所述第二多路計算子系統的對應計算單元所對應的信息核對單元連接,
其中,各所述信息核對單元用于對連接的計算單元的錯誤源進行界定,并控制該計算單元根據該計算單元所連接的對應計算單元的數據進行錯誤數據的恢復及同步。
優選地,所述第一多路計算子系統和所述第二多路計算子系統均為四路計算系統。
優選地,所述第一多路計算子系統的各計算單元對應的信息核對單元和所述第二多路計算子系統的對應計算單元所對應的信息核對單元通過雙鏈路進行連接。
優選地,所述第一多路計算子系統包括:
第一計算單元、第二計算單元、第三計算單元和第四計算單元,該四個計算單元兩兩之間通過UPI總線連接;
與所述第一計算單元連接的主信息核對單元,所述第一計算單元為主處理器,該四個計算單元分別對應連接一個從信息核對單元,各所述從信息核對單元與PCIE交換單元或PCIE Swith單元連接;
與所述主信息核對單元、預設的從信息核對單元、預設的PCIE交換單元連接的基礎控制單元;
與所述基礎控制單元連接,對所述具備雙模修復特性的多路服務器系統中的各功能模塊的運行狀態進行監控的管理單元。
優選地,所述主信息核對單元通過DMI鏈路和PCIE3.0x16鏈路和所述第一計算單元連接。
優選地,所述主信息核對單元通過DMI總線和所述基礎控制單元連接。
優選地,所述基礎控制單元通過PCIE3.0x1、USB、SMBus和NCSI鏈路和所述管理單元連接。
一種用于提高多路服務器系統穩定性的方法,該多路服務器系統包括兩個互聯的結構完全相同的多路計算子系統,且該兩個多路計算子系統同時處理相同的指令和數據,該方法包括:
實時對兩個多路計算子系統所處理的指令和數據的運算結果進行分析和比對;
判斷所述兩個多路計算子系統所處理的指令和數據的運算結果是否一致;
若否,則對錯誤源進行界定,判定出出現故障的多路計算子系統;
根據未出現故障的多路計算子系統的運行數據對出現故障的多路計算子系統的運行數據進行恢復和同步。
優選地,還包括:
判斷所述出現故障的多路計算子系統的運行數據是否恢復和同步成功;
若否,則將服務器應用遷徙至未出現故障的多路計算子系統上。
與現有技術相比,上述技術方案具有以下優點:
本發明所提供的一種多路服務器系統,包括:第一多路計算子系統和第二多路計算子系統,第一多路計算子系統和第二多路計算子系統結構相同,各多路計算子系統的各計算單元均對應連接一個信息核對單元,第一多路計算子系統中的各計算單元和第二多路計算子系統中的對應計算單元連接并各自獨立處理相同的數據和指令,第一多路計算子系統的各計算單元對應的信息核對單元和第二多路計算子系統的對應計算單元所對應的信息核對單元連接,其中,各信息核對單元用于對連接的計算單元的錯誤源進行界定,并控制該計算單元根據該計算單元所連接的對應計算單元的數據進行錯誤數據的恢復及同步。在為用戶提供服務器應用時,兩個多路計算子系統均處于通電運行狀態,并對用戶只呈現1個多路計算子系統的資源,在運行過程中,兩個多路計算子系統實時對運行的數據和指令進行校對,若兩個多路計算子系統在某個時刻運行的結果不同,則表示此時出現故障,根據信息核對單元對錯誤源進行界定,并根據未出現故障的一個多路計算子系統的運行數據對出現故障的多路計算子系統的錯誤數據進行恢復和同步,從而不會出現當一個多路計算子系統出現故障而不得不停止服務器系統的情況,從而不會造成用戶關鍵應用的停滯,保證了用戶的應用及程序的穩定運行。
附圖說明
為了更清楚地說明本發明實施例或現有技術中的技術方案,下面將對實施例或現有技術描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖是本發明的一些實施例,對于本領域普通技術人員來講,在不付出創造性勞動的前提下,還可以根據這些附圖獲得其他的附圖。
圖1為本發明一種具體實施方式所提供的多路服務器系統結構示意圖;
圖2為本發明一種具體實施方式所提供的多路服務器系統的單個多路計算子系統的構架原理結構示意圖;
圖3為本發明一種具體實施方式所提供的用于提高多路服務器系統穩定性的方法流程圖。
具體實施方式
本發明的核心是提供一種多路服務器系統及用于提高其穩定性的方法,可以在用戶應用服務器系統時,保證用戶的應用及程序的穩定運行。
為了使本發明的上述目的、特征和優點能夠更為明顯易懂,下面結合附圖對本發明的具體實施方式做詳細的說明。
在以下描述中闡述了具體細節以便于充分理解本發明。但是本發明能夠以多種不同于在此描述的其它方式來實施,本領域技術人員可以在不違背本發明內涵的情況下做類似推廣。因此本發明不受下面公開的具體實施的限制。
本發明的一種具體實施方式提供了一種多路服務器系統,包括:第一多路計算子系統和第二多路計算子系統,第一多路計算子系統和第二多路計算子系統結構相同,各多路計算子系統的各計算單元均對應連接一個信息核對單元,第一多路計算子系統中的各計算單元和第二多路計算子系統中的對應計算單元連接并各自獨立處理相同的數據和指令,第一多路計算子系統的各計算單元對應的信息核對單元和第二多路計算子系統的對應計算單元所對應的信息核對單元連接,其中,各信息核對單元用于對連接的計算單元的錯誤源進行界定,并控制該計算單元根據該計算單元所連接的對應計算單元的數據進行錯誤數據的恢復及同步。
在本實施方式中,各多路計算子系統起到實時對兩個多路計算子系統的運算結果分析和比對的作用。在為用戶提供服務器應用時,兩個多路計算子系統均處于通電運行狀態,并對用戶只呈現1個多路計算子系統的資源,在運行過程中,兩個多路計算子系統實時對運行的數據和指令進行校對,若兩個多路計算子系統在某個時刻運行的結果不同,則表示此時出現故障,根據信息核對單元對錯誤源進行界定,并根據未出現故障的一個多路計算子系統的運行數據對出現故障的多路計算子系統的錯誤數據進行恢復和同步。當需要更換某一多路計算子系統中的損壞的硬件設備時,將故障點硬件設備拔出再插入完好的硬件設備,也可以通過未出現故障的多路計算子系統對該新插入的硬件設備進行數據的傳輸、拷貝和恢復。當某一多路計算子系統遇到無法修復的故障時,應用自動遷徙至另外一個未出現故障的多路計算子系統上,不會影響用戶關鍵應用的停滯。從而不會出現當一個多路計算子系統出現故障而不得不停止服務器系統的情況,從而不會造成用戶關鍵應用的停滯,保證了用戶的應用及程序的穩定運行。
請參考圖1,圖1為本發明一種具體實施方式所提供的多路服務器系統結構示意圖。
在上述實施方式的基礎上,本發明一種實施方式以四路計算系統為例對該多路服務器系統進行了詳細說明。在本實施方式中,如圖1所示,第一多路計算子系統1和第二多路計算子系統2均為四路計算系統。即每一個多路計算子系統中均包括四個計算單元,在本實施方式中,各四路計算系統均包括計算單元0、計算單元1、計算單元2、計算單元3四個計算單元。由于第一多路計算子系統和第二多路計算子系統結構相同,因此,第一多路計算子系統和第二多路計算子系統中的計算單元是一一對應的,如第一多路計算子系統中的計算單元0和第二多路計算子系統中的計算單元0結構和作用是完全相同的。這保證了兩個四路計算系統在正常運行時能夠實時保持一致的運行結果。
在本實施方式中,設定各四路計算系統中的計算單元0為主計算單元,因此,優選地設置各計算單元0連接一個主信息核對單元和一個從信息核對單元;而各四路計算系統中的計算單元1、計算單元2、計算單元3分別連接一從信息核對單元。當然,為了保證結構的對稱性,各四路計算系統中的計算單元1連接兩個從信息核對單元。如圖1所示,各四路計算系統中的計算單元和對應的信息核對單元連接,即兩個四路計算系統中的對應計算單元通過對應的信息核對單元實現互聯。
需要說明的是,第一多路計算子系統中的各計算單元和第二多路計算子系統中的對應計算單元,指的是:第一多路計算子系統中的計算單元0和第二多路計算子系統中的計算單元0相對應;第一多路計算子系統中的計算單元1和第二多路計算子系統中的計算單元1相對應;第一多路計算子系統中的計算單元2和第二多路計算子系統中的計算單元2相對應;第一多路計算子系統中的計算單元3和第二多路計算子系統中的計算單元3相對應。
在本實施方式中,對應的計算單元之間通過PCIE3.0x8鏈路進行連接。該鏈路用于作為對應的計算單元之間的指令和計算單元內部存儲器之間數據的同步和恢復,該鏈路的帶寬可達64Gbp/s。
進一步地,第一多路計算子系統的各計算單元對應的信息核對單元和第二多路計算子系統的對應計算單元所對應的信息核對單元通過雙鏈路進行連接。通過雙鏈路進行連接這是由冗余的角度進行考慮,單個通道的帶寬可達8Gbp/s。
請參考圖2,圖2為本發明一種具體實施方式所提供的多路服務器系統的單個多路計算子系統的構架原理結構示意圖。
在本發明的一種實施方式中,對單個的多路計算子系統的構架原理進行了說明。在本實施方式中仍舊以如圖1所示的四路計算系統為例進行說明。為了簡化說明,在圖2中只對計算單元0和計算單元3的連接構架進行說明。
在本實施方式中,第一多路計算子系統包括:第一計算單元即計算單元0、第二計算單元即計算單元1、第三計算單元即計算單元2和第四計算單元即計算單元3,該四個計算單元兩兩之間通過UPI總線連接,四個計算單元在邏輯上通過UPI互連技術組建成1個獨立的四路系統,優選地每個計算單元均是基于傳統的X86架構的處理器;與第一計算單元連接的主信息核對單元,第一計算單元為主處理器,該四個計算單元分別對應連接一個從信息核對單元,各從信息核對單元與PCIE交換單元或PCIE Swith單元連接。各從信息核對單元下行主要連接PCIE實體設備或下掛PCIE Swith單元,進行多PCIE設備的同時支持。與主信息核對單元、預設的從信息核對單元、預設的PCIE交換單元連接的基礎控制單元,基礎控制單元用于控制系統中除各計算單元和信息核對單元外的所有功能部件,基礎控制單元通過PCIE3.0x1、USB、SMBus和NCSI鏈路和管理單元連接。與基礎控制單元連接,對具備雙模修復特性的多路服務器系統中的各功能模塊的運行狀態進行監控的管理單元,管理單元監控如各功能模塊的供電電壓數據和自身發熱量等。主信息核對單元通過DMI鏈路和PCIE3.0x16鏈路和第一計算單元連接,其中DMI鏈路用來傳輸數據量小、運算頻繁的操作指令,PCIE3.0x16鏈路提供128Gbp/s的數據帶寬用來傳輸計算所需的大容量數據。主信息核對單元通過DMI總線和基礎控制單元連接,提供32Gbp/s的讀寫帶寬。其中,該連接架構還包括MUX,MUX通過Host SPI和BIOS Flash連接,MUX通過LPC和主信息核對單元連接。
其中,主信息核對單元與從信息核對單元通過N2S總線連接,實時同步各模塊之間的數據,同時從信息核對單元接收主信息核對單元發出的控制指令,提供架構管理方面的冗余性。
請參考圖3,圖3為本發明一種具體實施方式所提供的用于提高多路服務器系統穩定性的方法流程圖。
相應地,本發明還提供了一種用于提高多路服務器系統穩定性的方法,其中,該多路服務器系統包括兩個互聯的結構完全相同的多路計算子系統,且該兩個多路計算子系統同時處理相同的指令和數據,該方法包括:
S11:實時對兩個多路計算子系統所處理的指令和數據的運算結果進行分析和比對;
S12:判斷兩個多路計算子系統所處理的指令和數據的運算結果是否一致;
S13:若否,則對錯誤源進行界定,判定出出現故障的多路計算子系統;
S14:根據未出現故障的多路計算子系統的運行數據對出現故障的多路計算子系統的運行數據進行恢復和同步;
S15:判斷出現故障的多路計算子系統的運行數據是否恢復和同步成功;
S16:若否,則將服務器應用遷徙至未出現故障的多路計算子系統上。
本實施方式所提供的用于提高多路服務器系統穩定性的方法,對結構相同且實時進行相同數據處理的兩個多路計算子系統進行實時的運算結果分析和對比,提高了安全性要求,只有兩個多路計算子系統運行時的運算結果一致,則運行的數據和指令才繼續向下處理,如果兩個多路計算子系統運算結果不一致,則表示某一多路計算子系統出現了硬件故障或軟件層面的問題,此時對錯誤源進行界定,如通過多路計算子系統中的信息核對單元中的仲裁程序對錯誤源進行界定。然后根據正常運行的多路計算子系統中的正確的運行數據對出現故障的多路計算子系統中的錯誤數據進行恢復和同步,使得兩個多路計算子系統保持正確的運行數據且運行數據保持一致性,從而實現了基于全冗余架構的多路計算系統的動態雙模修復。當遇到故障無法修復時,通過正常運行的多路計算子系統為用戶提供系統資源,屏蔽掉出現故障的多路計算子系統。保證了用戶關鍵、核心應用及程序的穩定運行。
以上對本發明所提供的一種多路服務器系統及用于提高其穩定性的方法進行了詳細介紹。本文中應用了具體個例對本發明的原理及實施方式進行了闡述,以上實施例的說明只是用于幫助理解本發明的方法及其核心思想。應當指出,對于本技術領域的普通技術人員來說,在不脫離本發明原理的前提下,還可以對本發明進行若干改進和修飾,這些改進和修飾也落入本發明權利要求的保護范圍內。