本發(fā)明涉及通信技術領域,具體涉及一種傳輸節(jié)點集群的檢測方法以及一種傳輸節(jié)點集群的檢測裝置。
背景技術:
PHP(Hypertext Preprocessor,超文本預處理器)是一種通用開源腳本語言。該語言的語法吸收了C語言、Java和Perl的特點,利于學習和使用,主要適用于Web開發(fā)領域。
目前為實現針對多臺服務器的工作情況的檢測,可以利用PHP編輯多個Linux命令以及檢測客戶端執(zhí)行的多個檢測操作,多個檢測操作使用同一函數編輯。具體執(zhí)行時,檢測客戶端按順序發(fā)送多個Linux命令,在發(fā)送一個Linux命令并且接收到服務器針對該Linux命令反饋的檢測結果后,發(fā)送下一個Linux命令。
雖然上述方法實現了多個Linux命令的發(fā)送,但是由于多個Linux命令是串行發(fā)送的,只有在發(fā)送當前Linux命令并且接收到所有服務器針對當前Linux命令反饋的檢測結果后,才可以發(fā)送下一個Linux命令,因此完成多個檢測指令的發(fā)送以及多個檢測結果的接收需要耗費較長時間,檢測操作的執(zhí)行效率較低。
技術實現要素:
鑒于上述問題,提出了本發(fā)明以便提供一種克服上述問題或者至少部分地解決上述問題的傳輸節(jié)點集群的檢測方法和相應的傳輸節(jié)點集群的檢測裝置。
依據本發(fā)明的一個方面,提供了一種傳輸節(jié)點集群的檢測方法,包括:
調用第一函數向傳輸節(jié)點集群的各個傳輸節(jié)點同時發(fā)送檢測指令,各檢測指令攜帶指示檢測結果在預置數組中存儲位置的文件指針,以由傳輸節(jié)點按照文件指針將檢測結果添加至預置數組;
調用第二函數檢測預置數組的數據更新;
當檢測到存在更新的檢測結果時,調用第三函數從所述預置數組中提取更新的檢測結果;
根據所有傳輸節(jié)點的檢測結果進行傳輸節(jié)點的調用。
可選地,所述調用第一函數向傳輸節(jié)點集群的各個傳輸節(jié)點同時發(fā)送檢測指令包括:
通過第一接口調用第一函數向傳輸節(jié)點集群的各個傳輸節(jié)點同時發(fā)送檢測指令,所述傳輸節(jié)點通過第二接口向預置數組發(fā)送檢測結果,所述第一接口與第二接口相同或不同。
可選地,在所述通過第一接口調用第一函數向傳輸節(jié)點集群的各個傳輸節(jié)點同時發(fā)送檢測指令之前,所述方法還包括:
檢測所述第二接口對檢測結果的當前承載數目;
計算所述第二接口對檢測結果的剩余承載數目;
所述通過第一接口調用第一函數向傳輸節(jié)點集群的各個傳輸節(jié)點同時發(fā)送檢測指令包括:
通過所述第一接口調用所述第一函數向傳輸節(jié)點集群的各個傳輸節(jié)點同時發(fā)送所述剩余承載數目對應的檢測指令。
可選地,所述調用第一函數向傳輸節(jié)點集群的各個傳輸節(jié)點同時發(fā)送檢測指令包括:
調用第一函數向傳輸節(jié)點集群的各個傳輸節(jié)點順序發(fā)送多個檢測任務對應的檢測指令。
可選地,所述調用第一函數向傳輸節(jié)點集群的各個傳輸節(jié)點順序發(fā)送多個檢測任務對應的檢測指令包括:
調用所述第一函數向傳輸節(jié)點集群的各個傳輸節(jié)點發(fā)送一個檢測任務對應的檢測指令后,直接調用向所述第一函數發(fā)送下一個檢測任務對應的多個檢測指令。
可選地,所述調用第一函數向傳輸節(jié)點集群的各個傳輸節(jié)點順序發(fā)送多個檢測任務對應的檢測指令包括:
調用所述第一函數執(zhí)行一個檢測任務,并在提取到所有傳輸節(jié)點對所述檢測任務的檢測結果后,調用所述第一函數執(zhí)行下一個檢測任務。
可選地,在所述調用所述第一函數執(zhí)行下一個檢測任務之前,所述方法還包括:
針對待執(zhí)行的下一個檢測任務,查找記錄的歷史處理時間;
根據查找的所述下一個檢測任務的歷史處理時間,設置所述一個檢測任務和所述下一個檢測任務之間的處理時間間隔;
所述調用所述第一函數執(zhí)行下一個檢測任務包括:
開始執(zhí)行所述一個檢測任務后,按照設置的處理時間間隔,調用所述第一函數執(zhí)行所述下一個檢測任務。
可選地,所述方法還包括:
針對未查找到歷史處理時間的所述下一檢測任務,以其他各個檢測任務的歷史處理時間的均值為歷史處理時間。
可選地,所述方法還包括:
在接收到一個檢測任務對應的所有傳輸節(jié)點的檢測結果后,記錄所述檢測任務的歷史處理時間。
可選地,在所述根據所有傳輸節(jié)點的檢測結果進行傳輸節(jié)點的調用之前,所述方法還包括:
接收第一客戶端對傳輸節(jié)點的調用請求;
所述檢測結果包括傳輸節(jié)點的至少一種運行狀態(tài)參數,所述根據所有傳輸節(jié)點的檢測結果進行傳輸節(jié)點的調用包括:
選取運行狀態(tài)參數滿足設定條件的目標傳輸節(jié)點,并反饋至所述第一客戶端。
可選地,所述根據所有傳輸節(jié)點的檢測結果進行傳輸節(jié)點的調用包括:
根據所述檢測結果識別傳輸節(jié)點是否正常運行;
若識別到某個傳輸節(jié)點未正常運行,則為使用該傳輸節(jié)點的第二客戶端重新分配傳輸節(jié)點。
根據本發(fā)明的另一方面,提供了一種傳輸節(jié)點集群的檢測裝置,包括:
檢測指令發(fā)送模塊,用于調用第一函數向傳輸節(jié)點集群的各個傳輸節(jié)點同時發(fā)送檢測指令,各檢測指令攜帶指示檢測結果在預置數組中存儲位置的文件指針,以由傳輸節(jié)點按照文件指針將檢測結果添加至預置數組;
數據更新檢測模塊,用于調用第二函數檢測預置數組的數據更新;
檢測結果提取模塊,用于當檢測到存在更新的檢測結果時,調用第三函數從所述預置數組中提取更新的檢測結果;
傳輸節(jié)點調用模塊,用于根據所有傳輸節(jié)點的檢測結果進行傳輸節(jié)點的調用。
可選地,所述檢測指令發(fā)送模塊,具體用于通過第一接口調用第一函數向傳輸節(jié)點集群的各個傳輸節(jié)點同時發(fā)送檢測指令,所述傳輸節(jié)點通過第二接口向預置數組發(fā)送檢測結果,所述第一接口與第二接口相同或不同。
可選地,所述裝置還包括:
承載數目檢測模塊,用于在所述通過第一接口調用第一函數向傳輸節(jié)點集群的各個傳輸節(jié)點同時發(fā)送檢測指令之前,檢測所述第二接口對檢測結果的當前承載數目;
剩余承載數目計算模塊,用于計算所述第二接口對檢測結果的剩余承載數目;
所述檢測指令發(fā)送模塊,具體用于通過所述第一接口調用所述第一函數向傳輸節(jié)點集群的各個傳輸節(jié)點同時發(fā)送所述剩余承載數目對應的檢測指令。
可選地,所述檢測指令發(fā)送模塊,具體用于調用第一函數向傳輸節(jié)點集群的各個傳輸節(jié)點順序發(fā)送多個檢測任務對應的檢測指令。
可選地,所述檢測指令發(fā)送模塊包括:
第一檢測指令發(fā)送子模塊,用于調用所述第一函數向傳輸節(jié)點集群的各個傳輸節(jié)點發(fā)送一個檢測任務對應的檢測指令;
第二檢測指令發(fā)送子模塊,用于在發(fā)送一個檢測任務對應的檢測指令后,直接調用向所述第一函數發(fā)送下一個檢測任務對應的多個檢測指令。
可選地,所述檢測指令發(fā)送模塊包括:
第一檢測任務執(zhí)行子模塊,用于調用所述第一函數執(zhí)行一個檢測任務;
第二檢測任務執(zhí)行子模塊,用于在提取到所有傳輸節(jié)點對所述檢測任務的檢測結果后,調用所述第一函數執(zhí)行下一個檢測任務。
可選地,所述裝置還包括:
歷史處理時間查找模塊,用于在所述調用所述第一函數執(zhí)行下一個檢測任務之前,針對待執(zhí)行的下一個檢測任務,查找記錄的歷史處理時間;
處理時間間隔設置模塊,用于根據查找的所述下一個檢測任務的歷史處理時間,設置所述一個檢測任務和所述下一個檢測任務之間的處理時間間隔;
所述第二檢測任務執(zhí)行子模塊,具體用于開始執(zhí)行所述一個檢測任務后,按照設置的處理時間間隔,調用所述第一函數執(zhí)行所述下一個檢測任務。
可選地,所述裝置還包括:
歷史處理時間確定模塊,用于針對未查找到歷史處理時間的所述下一檢測任務,以其他各個檢測任務的歷史處理時間的均值為歷史處理時間。
可選地,所述裝置還包括:
歷史處理時間記錄模塊,用于在接收到一個檢測任務對應的所有傳輸節(jié)點的檢測結果后,記錄所述檢測任務的歷史處理時間。
可選地,所述裝置還包括:
調用請求接收模塊,用于在所述根據所有傳輸節(jié)點的檢測結果進行傳輸節(jié)點的調用之前,接收第一客戶端對傳輸節(jié)點的調用請求;
所述傳輸節(jié)點調用模塊,具體用于選取運行狀態(tài)參數滿足設定條件的目標傳輸節(jié)點,并反饋至所述第一客戶端,所述檢測結果包括傳輸節(jié)點的至少一種運行狀態(tài)參數。
可選地,所述傳輸節(jié)點調用模塊包括:
運行狀態(tài)識別子模塊,用于根據所述檢測結果識別傳輸節(jié)點是否正常運行;
節(jié)點重新分配子模塊,用于若識別到某個傳輸節(jié)點未正常運行,則為使用該傳輸節(jié)點的第二客戶端重新分配傳輸節(jié)點。
依據本發(fā)明實施例,調用第一函數發(fā)送檢測指令,調用第二函數檢測數據更新,調用第三函數提取更新的檢測結果,由于調用不同函數執(zhí)行不同操作,多個操作之間無順序關聯,因此本發(fā)明實施例可以同時發(fā)送多個檢測指令至各傳輸節(jié)點,多個檢測指令可以在短時間內被不同傳輸節(jié)點執(zhí)行,從而縮短了多個檢測指令的發(fā)送時間以及多個檢測結果的接收時間,提高了檢測操作的執(zhí)行效率。
本發(fā)明實施例在通過第一接口發(fā)送檢測指令之前,還檢測了第二接口對檢測結果的承載數目,并且計算了第二接口對檢測結果的剩余承載數目,由于按照剩余承載數目發(fā)送檢測指令至各傳輸節(jié)點,因此避免了第二接口出現大量檢測結果滯留的情況的發(fā)生,保證了檢測結果的反饋時間。
上述說明僅是本發(fā)明技術方案的概述,為了能夠更清楚了解本發(fā)明的技術手段,而可依照說明書的內容予以實施,并且為了讓本發(fā)明的上述和其它目的、特征和優(yōu)點能夠更明顯易懂,以下特舉本發(fā)明的具體實施方式。
附圖說明
通過閱讀下文優(yōu)選實施方式的詳細描述,各種其他的優(yōu)點和益處對于本領域普通技術人員將變得清楚明了。附圖僅用于示出優(yōu)選實施方式的目的,而并不認為是對本發(fā)明的限制。而且在整個附圖中,用相同的參考符號表示相同的部件。在附圖中:
圖1示出了根據本發(fā)明實施例一的一種傳輸節(jié)點集群的檢測方法的步驟流程示意圖;
圖2示出了根據本發(fā)明實施例二的一種傳輸節(jié)點集群的檢測方法的步驟流程示意圖;
圖3示出了根據本發(fā)明實施例三的一種傳輸節(jié)點集群的檢測裝置的結構框圖;
圖4示出了根據本發(fā)明實施例四的一種傳輸節(jié)點集群的檢測裝置的結構框圖。
具體實施方式
下面將參照附圖更詳細地描述本公開的示例性實施例。雖然附圖中顯示了本公開的示例性實施例,然而應當理解,可以以各種形式實現本公開而不應被這里闡述的實施例所限制。相反,提供這些實施例是為了能夠更透徹地理解本公開,并且能夠將本公開的范圍完整的傳達給本領域的技術人員。
參照圖1,示出了根據本發(fā)明實施例一的一種傳輸節(jié)點集群的檢測方法的步驟流程示意圖,具體可以包括如下步驟:
步驟101、調用第一函數向傳輸節(jié)點集群的各個傳輸節(jié)點同時發(fā)送檢測指令,各檢測指令攜帶指示檢測結果在預置數組中存儲位置的文件指針,以由傳輸節(jié)點按照文件指針將檢測結果添加至預置數組。
本發(fā)明實施例提供的傳輸節(jié)點集群的檢測方法用于檢測傳輸節(jié)點集群中各傳輸節(jié)點是否正常工作,該方法包括檢測指令發(fā)送、數據更新檢測、檢測結果提取等多個操作,上述多個操作通過調用多個函數完成。其中,傳輸節(jié)點為具有數據傳輸、數據處理等功能的服務器,傳輸節(jié)點集群包括多個傳輸節(jié)點。
本發(fā)明實施例將向傳輸節(jié)點集群的各個傳輸節(jié)點發(fā)送檢測指令的客戶端稱為檢測客戶端。由于檢測方法對應的多個操作是通過調用多個函數完成的,檢測指令發(fā)送操作和檢測結果提取操作之間無順序關聯,因此檢測客戶端可以調用第一函數向傳輸節(jié)點集群的各個傳輸節(jié)點同時發(fā)送多個檢測指令。調用的第一函數可以為多種,如proc_open()函數。發(fā)送的多個檢測指令可以屬于同一個檢測任務,也可以屬于多個檢測任務。檢測指令可以為多種形式,如數值計算指令、運行參數檢測指令等。
預先在檢測客戶端內設置預設數組,預設數組用于存儲各傳輸節(jié)點反饋的檢測結果,不同傳輸節(jié)點的檢測結果在預設數組中存儲位置是預先設定的。為將不同傳輸節(jié)點反饋的檢測結果添加至預置數組中指定存儲位置,可以在向各傳輸節(jié)點發(fā)送檢測指令時,讓各檢測指令攜帶指示檢測結果在預置數組中存儲位置的信息即文件指針,傳輸節(jié)點可以從接收的檢測指令中提取文件指針,并按照文件指針將檢測結果添加至預置數組的指定存儲位置。
本發(fā)明實施例所述方法可以應用于不同場景,例如可以應用于普通數據傳輸的場景、流數據傳輸的場景。當應用于流數據傳輸的場景時,傳輸節(jié)點可以為內容分發(fā)網絡(Content Delivery Network,CDN)中的節(jié)點,傳輸節(jié)點集群可以包括內容分發(fā)網絡中的多個傳輸節(jié)點,如可以將位于某一地理區(qū)域內的多個傳輸節(jié)點稱為傳輸節(jié)點集群??梢允褂脙热莘职l(fā)網絡中的調度節(jié)點對傳輸節(jié)點集群中的多個傳輸節(jié)點進行管理,調度節(jié)點可以調用第一函數向傳輸節(jié)點集群的各個傳輸節(jié)點同時發(fā)送檢測指令,以檢測各傳輸節(jié)點的工作情況。
步驟102、調用第二函數檢測預置數組的數據更新。
預置數組中針對不同傳輸節(jié)點的存儲位置可能存在歷史記錄的檢測結果,也可能是空缺的,當傳輸節(jié)點反饋新的檢測結果后,預置數組中與傳輸節(jié)點對應的存儲位置的數據會發(fā)生變化,更新為最新的檢測結果。
本發(fā)明實施例調用第二函數對預置數組進行檢測,具體地調用第二函數對預置數組中各存儲位置的數據進行檢測,檢測預置數組中是否存在更新的檢測結果。調用的第二函數可以為多種,如stream_select()函數。
步驟103、當檢測到存在更新的檢測結果時,調用第三函數從所述預置數組中提取更新的檢測結果。
當第二函數檢測到預置數組中存在更新的檢測結果后,本發(fā)明實施例調用第三函數從預置數組中提取更新的檢測結果。由于檢測指令可以為多種形式,相應地檢測結果也可以為多種形式,例如數值計算結果、運行狀態(tài)參數檢測結果等。調用的第三函數可以為多種,如stream_get_contents()函數。
預置數組中設有多個存儲位置,第二函數對多個存儲位置處的數據進行檢測,具體地第二函數可以按照多個存儲位置在預設數組中的排序,依次對多個存儲位置處的數據進行檢測。當預設數組中各存儲位置均存在更新的檢測結果時,第二函數會檢測到所有更新的檢測結果,這時第二函數完成對該檢測任務對應的所有檢測結果的檢測,可以進行下一檢測任務對應的檢測結果的檢測。
步驟104、根據所有傳輸節(jié)點的檢測結果進行傳輸節(jié)點的調用。
當檢測客戶端接收到節(jié)點調用請求后,可以根據傳輸節(jié)點集群中各傳輸節(jié)點的檢測結果,選取合適的目標傳輸節(jié)點給請求端使用,檢測結果為節(jié)點分配提供了依據。
目標傳輸節(jié)點的選取條件可以為多種,例如,當檢測結果為數值計算結果時,可以通過識別數值判斷傳輸節(jié)點是否正常工作,在判定傳輸節(jié)點工作正常后,可以選擇工作正常且與請求端距離較近的傳輸節(jié)點作為目標傳輸節(jié)點;當檢測結果為傳輸節(jié)點的運行狀態(tài)參數時,如CPU利用率、內容占用率等,可以選擇負載較輕且與請求端距離較近的傳輸節(jié)點作為目標傳輸節(jié)點,從而保證了集群中各傳輸節(jié)點的負載均衡。
當本發(fā)明實施例所述方法應用于流數據傳輸的場景時,內容分發(fā)網絡中的調度節(jié)點可以通過執(zhí)行本方法對傳輸節(jié)點集群內的多個傳輸節(jié)點進行監(jiān)管和分配,當調度節(jié)點根據檢測結果確定某一傳輸節(jié)點工作異常時,可以發(fā)送節(jié)點異常通知,以使傳輸節(jié)點盡快被修復。同時調度節(jié)點可以以檢測結果為依據為節(jié)點請求端重新分配合適的目標傳輸節(jié)點。
由于本發(fā)明實施例調用不同函數執(zhí)行不同操作,多個操作之間無順序關聯,因此可以同時發(fā)送多個檢測指令,并且在短時間內接收多個傳輸節(jié)點反饋的檢測結果,相比于背景技術中的發(fā)送一個檢測指令、接收對應的檢測結果、發(fā)送下一個檢測指令、接收對應的檢測結果的執(zhí)行過程,本發(fā)明實施例所述方法可以大幅度縮短檢測操作的時間,縮短檢測結果的等待時間,提高檢測執(zhí)行效率。
本發(fā)明實施例中,優(yōu)選地,在所述根據所有傳輸節(jié)點的檢測結果進行傳輸節(jié)點的調用之前,所述方法還包括:接收第一客戶端對傳輸節(jié)點的調用請求;
所述檢測結果包括傳輸節(jié)點的至少一種運行狀態(tài)參數,所述根據所有傳輸節(jié)點的檢測結果進行傳輸節(jié)點的調用包括:選取運行狀態(tài)參數滿足設定條件的目標傳輸節(jié)點,并反饋至所述第一客戶端。
檢測客戶端負責對傳輸節(jié)點集群中多個傳輸節(jié)點的檢測外,還可以負責多個傳輸節(jié)點的分配工作。檢測客戶端接收到第一客戶端發(fā)送的節(jié)點調用請求后,可以根據各傳輸節(jié)點的檢測結果確定各傳輸節(jié)點的運行情況,從而為第一客戶端分配合適的目標傳輸節(jié)點,如分配距離較近且負載較輕的傳輸節(jié)點。
檢測結果可以包括多種內容,當檢測結果包括傳輸節(jié)點的至少一種運行狀態(tài)參數時,如CPU利用率、內存占用率等,檢測客戶端可以選取運行狀態(tài)參數滿足設定條件的目標傳輸節(jié)點,并將選取的目標傳輸節(jié)點反饋至第一客戶端。
針對不同的運行狀態(tài)參數可以對應不同的設定條件,例如當運行狀態(tài)參數為CPU利用率時,設定條件可以為CPU利用率小于a%,其中a為正數;當運行狀態(tài)參數為內存占用率時,設定條件可以為內存占用率小于b%,其中b為正數。
在流數據傳輸的場景中,檢測客戶端可以為調度節(jié)點,第一客戶端可以為流數據客戶端,流數據客戶端推送流數據至網絡中或從網絡中拉取流數據時,會向調度節(jié)點發(fā)送對傳輸節(jié)點的調用請求,相應地檢調度節(jié)點會接收到流數據客戶端對傳輸節(jié)點的調用請求。調度節(jié)點可以選取運行狀態(tài)參數滿足設定條件的傳輸節(jié)點作為目標傳輸節(jié)點,并將其反饋至流數據客戶端供其使用。
本發(fā)明實施例根據傳輸節(jié)點的運行狀態(tài)參數分配目標傳輸節(jié)點,可以保證為第一客戶端分配的目標傳輸節(jié)點均是工作正常的,還可以保證傳輸節(jié)點集群中多個傳輸節(jié)點的負載均衡,避免了傳輸節(jié)點負載過重現象的發(fā)生。
依據本發(fā)明實施例,調用第一函數發(fā)送檢測指令,調用第二函數檢測數據更新,調用第三函數提取更新的檢測結果,由于調用不同函數執(zhí)行不同操作,多個操作之間無順序關聯,因此本發(fā)明實施例可以同時發(fā)送多個檢測指令至各傳輸節(jié)點,多個檢測指令可以在短時間內被不同傳輸節(jié)點執(zhí)行,從而縮短了多個檢測指令的發(fā)送時間以及多個檢測結果的接收時間,提高了檢測操作的執(zhí)行效率。
參照圖2,示出了根據本發(fā)明實施例二的一種傳輸節(jié)點集群的檢測方法的步驟流程示意圖,具體可以包括如下步驟:
步驟201、調用第一函數向傳輸節(jié)點集群的各個傳輸節(jié)點同時發(fā)送檢測指令,各檢測指令攜帶指示檢測結果在預置數組中存儲位置的文件指針,以由傳輸節(jié)點按照文件指針將檢測結果添加至預置數組。
本發(fā)明實施例所述的檢測方法包括檢測指令發(fā)送、數據更新檢測、檢測結果提取等多個操作,通過調用多個函數執(zhí)行上述多個操作。本發(fā)明實施例將向傳輸節(jié)點集群的各個傳輸節(jié)點發(fā)送檢測指令的客戶端稱為檢測客戶端。
為提高檢測的準確性,可以使用多個檢測任務對各傳輸節(jié)點進行檢測。具體可以調用第一函數向傳輸節(jié)點集群的各個傳輸節(jié)點順序發(fā)送多個檢測任務對應的檢測指令。由于各傳輸節(jié)點對檢測結果的承載能力不同,因此可以按照不同方式向各傳輸節(jié)點發(fā)送多個檢測任務對應的檢測指令。當傳輸節(jié)點的承載能力較弱時,多個檢測任務對應的檢測指令的發(fā)送方式可以為:調用所述第一函數執(zhí)行一個檢測任務,并在提取到所有傳輸節(jié)點對所述檢測任務的檢測結果后,調用所述第一函數執(zhí)行下一個檢測任務。例如,發(fā)送檢測任務1對應的100條檢測指令并且提取到100個傳輸節(jié)點反饋的100個檢測結果后,再發(fā)送檢測任務2對應的100條檢測指令,按照上述方法完成對多個檢測任務對應的檢測指令的發(fā)送。
當傳輸節(jié)點的承載能力較強時,多個檢測任務對應的檢測指令的發(fā)送方式可以為:調用第一函數向傳輸節(jié)點集群的各個傳輸節(jié)點發(fā)送一個檢測任務對應的檢測指令后,直接調用向所述第一函數發(fā)送下一個檢測任務對應的多個檢測指令。例如,發(fā)送檢測任務1對應的100條檢測指令后,直接發(fā)送檢測任務2對應的100條檢測指令,按照上述方法對多個檢測任務對應的檢測指令進行發(fā)送。
對于傳輸節(jié)點的承載能力較弱時多個檢測任務對應的檢測指令的發(fā)送方式,只有在當前檢測任務的執(zhí)行結束后才可以執(zhí)行下一檢測任務的檢測操作,相鄰兩個檢測任務對應的檢測指令的發(fā)送時間存在處理時間間隔。
執(zhí)行上述發(fā)送方式時為控制多個檢測任務對應的檢測指令的發(fā)送時間,本發(fā)明實施例可以在調用所述第一函數執(zhí)行下一個檢測任務之前,針對待執(zhí)行的下一個檢測任務,查找記錄的歷史處理時間,根據查找的下一個檢測任務的歷史處理時間,設置所述一個檢測任務和所述下一個檢測任務之間的處理時間間隔。之后可以在開始執(zhí)行所述一個檢測任務后,按照設置的處理時間間隔,調用第一函數執(zhí)行下一個檢測任務。
例如,第一檢測任務的歷史處理時間為A秒,第二檢測任務的處理時間為B秒,第一檢測任務先執(zhí)行,第二檢測任務后執(zhí)行,將時間A秒作為第一檢測任務和第二檢測任務之間的處理時間間隔,在開始執(zhí)行第一檢測任務,即調用第一函數向傳輸節(jié)點集群的各傳輸節(jié)點發(fā)送檢測指令后,在A秒后,開始執(zhí)行第二檢測任務,調用第一函數向傳輸節(jié)點集群的各傳輸節(jié)點發(fā)送檢測指令。
為執(zhí)行上述步驟,依據檢測任務的歷史處理時間設置兩個檢測任務的處理時間間隔,本發(fā)明實施例可以在接收到一個檢測任務對應的所有傳輸節(jié)點的檢測結果后,記錄該檢測任務的歷史處理時間,以便使用歷史使用時間時從本地記錄中提取??梢杂涗浉鳈z測指令的發(fā)送時間以及與檢測指令對應的檢測結果的接收時間,并且計算檢測結果的接收時間與檢測指令的發(fā)送時間差值,將最大時間差值作為檢測任務的歷史處理時間。
檢測客戶端發(fā)送多個檢測任務對應的檢測指令時,可以在向各傳輸節(jié)點發(fā)送當前檢測任務對應的檢測指令后,依據本地記錄的檢測任務與歷史處理時間的對應關系,確定當前執(zhí)行的當前檢測任務的歷史處理時間,在發(fā)送當前檢測任務歷史處理時間后,發(fā)送下一檢測任務對應的檢測指令。
若當前執(zhí)行的檢測任務是新任務,檢測客戶端本地未記錄該任務的歷史處理時間,則本發(fā)明實施例針對未查找到歷史處理時間的檢測任務,可以以其他各個檢測任務的歷史處理時間的均值為歷史處理時間。例如,檢測客戶端本地記錄檢測任務1的歷史處理時間為0.10s、檢測任務2的歷史處理時間為0.12s以及檢測任務3的歷史處理時間為0.4s,則新檢測任務計算的歷史處理時間為0.12s。
本發(fā)明實施例可以使用同一接口發(fā)送檢測指令和接收檢測結果,也可以使用不同接口發(fā)送檢測指令和接收檢測結果。本步驟可以通過第一接口調用第一函數向傳輸節(jié)點集群的各個傳輸節(jié)點同時發(fā)送多個檢測指令,傳輸節(jié)點可以通過第二接口向預置數組發(fā)送檢測結果,其中第一接口與第二接口可以相同也可以不同。當第二接口不同于第一接口時,第二接口的數目可以為一個或多個,第二接口的數目可以根據實際進行設置。
當接口在某一時段內接收的檢測結果過多時,接口處會出現檢測結果滯留的現象,滯留現象會延長檢測結果通過接口的時間,降低檢測結果反饋至檢測客戶端的速度。為防止傳送至第二接口的檢測結果的數目超過接口的承載數目,保證各檢測結果短時間內通過第二接口,本發(fā)明實施例可以在通過第一接口調用第一函數向傳輸節(jié)點集群的各個傳輸節(jié)點同時發(fā)送檢測指令之前,檢測第二接口對檢測結果的當前承載數目,并且計算第二接口對檢測結果的剩余承載數目,之后通過第一接口調用第一函數向傳輸節(jié)點集群的各個傳輸節(jié)點同時發(fā)送剩余承載數目的檢測指令。
步驟202、調用第二函數檢測預置數組的數據更新。
步驟203、當檢測到存在更新的檢測結果時,調用第三函數從所述預置數組中提取更新的檢測結果。
步驟204、根據所述檢測結果識別傳輸節(jié)點是否正常運行。
檢測結果可以包括多種內容,可以指示傳輸節(jié)點的運行情況。檢測客戶端接收到檢測結果后,可以根據所述檢測結果識別傳輸節(jié)點是否正常運行。
由于檢測結果可以包括多種內容,因此存在多種識別傳輸節(jié)點是否正常運行的方式。例如,當檢測結果為數值計算結果即數值時,執(zhí)行節(jié)點檢測的客戶端可以根據數值判斷傳輸節(jié)點是否正常運行,如檢測指令為“計算1+1”,如果接收的檢測結果為“2”,則判定傳輸節(jié)點工作正常,否則,判斷傳輸節(jié)點工作異常。當檢測結果為傳輸節(jié)點的運行狀態(tài)參數時,如CPU利用率、內存占用率等,檢測客戶端可以判斷傳輸節(jié)點的運行狀態(tài)參數是否滿足設定條件,如果符合,則判定傳輸節(jié)點工作正常,否則,判定傳輸節(jié)點工作異常。
步驟205、若識別到某個傳輸節(jié)點未正常運行,則為使用該傳輸節(jié)點的第二客戶端重新分配傳輸節(jié)點。
如果根據檢測結果識別到傳輸節(jié)點運行異常,則可以根據檢測結果,在傳輸節(jié)點集群的多個傳輸節(jié)點中分配新的傳輸節(jié)點給第二客戶端使用,從而保證第二客戶端對傳輸節(jié)點的正常使用。
在流數據傳輸的場景中,檢測客戶端可以為調度節(jié)點,第二客戶端可以為流數據客戶端,流數據客戶端使用傳輸節(jié)點推送流數據至網絡中或從網絡中拉取流數據,當調度節(jié)點檢測到流數據客戶端使用的傳輸節(jié)點發(fā)生異常時,可以根據其他傳輸節(jié)點的檢測結果,為流數據客戶端重新分配傳輸節(jié)點供其使用。
依據本發(fā)明實施例,調用第一函數發(fā)送檢測指令,調用第二函數檢測數據更新,調用第三函數提取更新的檢測結果,由于調用不同函數執(zhí)行不同操作,多個操作之間無順序關聯,因此本發(fā)明實施例可以同時發(fā)送多個檢測指令至各傳輸節(jié)點,多個檢測指令可以在短時間內被不同傳輸節(jié)點執(zhí)行,從而縮短了多個檢測指令的發(fā)送時間以及多個檢測結果的接收時間,提高了檢測操作的執(zhí)行效率。
本發(fā)明實施例在通過第一接口發(fā)送檢測指令之前,還檢測了第二接口對檢測結果的承載數目,并且計算了第二接口對檢測結果的剩余承載數目,由于按照剩余承載數目發(fā)送檢測指令至各傳輸節(jié)點,因此避免了第二接口出現大量檢測結果滯留的情況的發(fā)生。
圖3示出了根據本發(fā)明實施例三的一種傳輸節(jié)點集群的檢測裝置的結構框圖。圖3中的傳輸節(jié)點集群的檢測裝置包括:
檢測指令發(fā)送模塊301,用于調用第一函數向傳輸節(jié)點集群的各個傳輸節(jié)點同時發(fā)送檢測指令,各檢測指令攜帶指示檢測結果在預置數組中存儲位置的文件指針,以由傳輸節(jié)點按照文件指針將檢測結果添加至預置數組。
數據更新檢測模塊302,用于調用第二函數檢測預置數組的數據更新。
檢測結果提取模塊303,用于當檢測到存在更新的檢測結果時,調用第三函數從所述預置數組中提取更新的檢測結果。
傳輸節(jié)點調用模塊304,用于根據所有傳輸節(jié)點的檢測結果進行傳輸節(jié)點的調用。
本發(fā)明實施例中,優(yōu)選地,所述裝置還包括:
調用請求接收模塊,用于在所述根據所有傳輸節(jié)點的檢測結果進行傳輸節(jié)點的調用之前,接收第一客戶端對傳輸節(jié)點的調用請求;
所述傳輸節(jié)點調用模塊304,具體用于選取運行狀態(tài)參數滿足設定條件的目標傳輸節(jié)點,并反饋至所述第一客戶端,所述檢測結果包括傳輸節(jié)點的至少一種運行狀態(tài)參數。
依據本發(fā)明實施例,調用第一函數發(fā)送檢測指令,調用第二函數檢測數據更新,調用第三函數提取更新的檢測結果,由于調用不同函數執(zhí)行不同操作,多個操作之間無順序關聯,因此本發(fā)明實施例可以同時發(fā)送多個檢測指令至各傳輸節(jié)點,多個檢測指令可以在短時間內被不同傳輸節(jié)點執(zhí)行,從而縮短了多個檢測指令的發(fā)送時間以及多個檢測結果的接收時間,提高了檢測操作的執(zhí)行效率。
圖4示出了根據本發(fā)明實施例四的一種傳輸節(jié)點集群的檢測裝置的結構框圖。圖4中的傳輸節(jié)點集群的檢測裝置包括:
檢測指令發(fā)送模塊401,用于調用第一函數向傳輸節(jié)點集群的各個傳輸節(jié)點順序發(fā)送多個檢測任務對應的檢測指令。
數據更新檢測模塊402,用于調用第二函數檢測預置數組的數據更新。
檢測結果提取模塊403,用于當檢測到存在更新的檢測結果時,調用第三函數從所述預置數組中提取更新的檢測結果。
傳輸節(jié)點調用模塊404,用于根據所有傳輸節(jié)點的檢測結果進行傳輸節(jié)點的調用。
所述傳輸節(jié)點調用模塊404包括:
運行狀態(tài)識別子模塊4041,用于根據所述檢測結果識別傳輸節(jié)點是否正常運行;
節(jié)點重新分配子模塊4042,用于若識別到某個傳輸節(jié)點未正常運行,則為使用該傳輸節(jié)點的第二客戶端重新分配傳輸節(jié)點。
本發(fā)明實施例中,優(yōu)選地,所述檢測指令發(fā)送模塊401,具體用于通過第一接口調用第一函數向傳輸節(jié)點集群的各個傳輸節(jié)點同時發(fā)送檢測指令,所述傳輸節(jié)點通過第二接口向預置數組發(fā)送檢測結果,所述第一接口與第二接口相同或不同。
本發(fā)明實施例中,優(yōu)選地,所述裝置還包括:
承載數目檢測模塊,用于在所述通過第一接口調用第一函數向傳輸節(jié)點集群的各個傳輸節(jié)點同時發(fā)送檢測指令之前,檢測所述第二接口對檢測結果的當前承載數目;
剩余承載數目計算模塊,用于計算所述第二接口對檢測結果的剩余承載數目;
所述檢測指令發(fā)送模塊401,具體用于通過所述第一接口調用所述第一函數向傳輸節(jié)點集群的各個傳輸節(jié)點同時發(fā)送所述剩余承載數目對應的檢測指令。
本發(fā)明實施例中,優(yōu)選地,所述檢測指令發(fā)送模塊401,具體用于調用第一函數向傳輸節(jié)點集群的各個傳輸節(jié)點順序發(fā)送多個檢測任務對應的檢測指令。
本發(fā)明實施例中,優(yōu)選地,所述檢測指令發(fā)送模塊401包括:
第一檢測指令發(fā)送子模塊,用于調用所述第一函數向傳輸節(jié)點集群的各個傳輸節(jié)點發(fā)送一個檢測任務對應的檢測指令;
第二檢測指令發(fā)送子模塊,用于在發(fā)送一個檢測任務對應的檢測指令后,直接調用向所述第一函數發(fā)送下一個檢測任務對應的多個檢測指令。
本發(fā)明實施例中,優(yōu)選地,所述檢測指令發(fā)送模塊401包括:
第一檢測任務執(zhí)行子模塊,用于調用所述第一函數執(zhí)行一個檢測任務;
第二檢測任務執(zhí)行子模塊,用于在提取到所有傳輸節(jié)點對所述檢測任務的檢測結果后,調用所述第一函數執(zhí)行下一個檢測任務。
本發(fā)明實施例中,優(yōu)選地,所述裝置還包括:
歷史處理時間查找模塊,用于在所述調用所述第一函數執(zhí)行下一個檢測任務之前,針對待執(zhí)行的下一個檢測任務,查找記錄的歷史處理時間;
處理時間間隔設置模塊,用于根據查找的所述下一個檢測任務的歷史處理時間,設置所述一個檢測任務和所述下一個檢測任務之間的處理時間間隔;
所述第二檢測任務執(zhí)行子模塊,具體用于開始執(zhí)行所述一個檢測任務后,按照設置的處理時間間隔,調用所述第一函數執(zhí)行所述下一個檢測任務。
本發(fā)明實施例中,優(yōu)選地,所述裝置還包括:
歷史處理時間確定模塊,用于針對未查找到歷史處理時間的所述下一檢測任務,以其他各個檢測任務的歷史處理時間的均值為歷史處理時間。
本發(fā)明實施例中,優(yōu)選地,所述裝置還包括:
歷史處理時間記錄模塊,用于在接收到一個檢測任務對應的所有傳輸節(jié)點的檢測結果后,記錄所述檢測任務的歷史處理時間。
依據本發(fā)明實施例,調用第一函數發(fā)送檢測指令,調用第二函數檢測數據更新,調用第三函數提取更新的檢測結果,由于調用不同函數執(zhí)行不同操作,多個操作之間無順序關聯,因此本發(fā)明實施例可以同時發(fā)送多個檢測指令至各傳輸節(jié)點,多個檢測指令可以在短時間內被不同傳輸節(jié)點執(zhí)行,從而縮短了多個檢測指令的發(fā)送時間以及多個檢測結果的接收時間,提高了檢測操作的執(zhí)行效率。
本發(fā)明實施例在通過第一接口發(fā)送檢測指令之前,還檢測了第二接口對檢測結果的承載數目,并且計算了第二接口對檢測結果的剩余承載數目,由于按照剩余承載數目發(fā)送檢測指令至各傳輸節(jié)點,因此避免了第二接口出現大量檢測結果滯留的情況的發(fā)生。
在此提供的算法和顯示不與任何特定計算機、虛擬系統(tǒng)或者其它設備固有相關。各種通用系統(tǒng)也可以與基于在此的示教一起使用。根據上面的描述,構造這類系統(tǒng)所要求的結構是顯而易見的。此外,本發(fā)明也不針對任何特定編程語言。應當明白,可以利用各種編程語言實現在此描述的本發(fā)明的內容,并且上面對特定語言所做的描述是為了披露本發(fā)明的最佳實施方式。
在此處所提供的說明書中,說明了大量具體細節(jié)。然而,能夠理解,本發(fā)明的實施例可以在沒有這些具體細節(jié)的情況下實踐。在一些實例中,并未詳細示出公知的方法、結構和技術,以便不模糊對本說明書的理解。
類似地,應當理解,為了精簡本公開并幫助理解各個發(fā)明方面中的一個或多個,在上面對本發(fā)明的示例性實施例的描述中,本發(fā)明的各個特征有時被一起分組到單個實施例、圖、或者對其的描述中。然而,并不應將該公開的方法解釋成反映如下意圖:即所要求保護的本發(fā)明要求比在每個權利要求中所明確記載的特征更多的特征。更確切地說,如下面的權利要求書所反映的那樣,發(fā)明方面在于少于前面公開的單個實施例的所有特征。因此,遵循具體實施方式的權利要求書由此明確地并入該具體實施方式,其中每個權利要求本身都作為本發(fā)明的單獨實施例。
本領域那些技術人員可以理解,可以對實施例中的設備中的模塊進行自適應性地改變并且把它們設置在與該實施例不同的一個或多個設備中??梢园褜嵤├械哪K或單元或組件組合成一個模塊或單元或組件,以及此外可以把它們分成多個子模塊或子單元或子組件。除了這樣的特征和/或過程或者單元中的至少一些是相互排斥之外,可以采用任何組合對本說明書(包括伴隨的權利要求、摘要和附圖)中公開的所有特征以及如此公開的任何方法或者設備的所有過程或單元進行組合。除非另外明確陳述,本說明書(包括伴隨的權利要求、摘要和附圖)中公開的每個特征可以由提供相同、等同或相似目的的替代特征來代替。
此外,本領域的技術人員能夠理解,盡管在此所述的一些實施例包括其它實施例中所包括的某些特征而不是其它特征,但是不同實施例的特征的組合意味著處于本發(fā)明的范圍之內并且形成不同的實施例。例如,在下面的權利要求書中,所要求保護的實施例的任意之一都可以以任意的組合方式來使用。
本發(fā)明的各個部件實施例可以以硬件實現,或者以在一個或者多個處理器上運行的軟件模塊實現,或者以它們的組合實現。本領域的技術人員應當理解,可以在實踐中使用微處理器或者數字信號處理器(DSP)來實現根據本發(fā)明實施例的傳輸節(jié)點集群的檢測設備中的一些或者全部部件的一些或者全部功能。本發(fā)明還可以實現為用于執(zhí)行這里所描述的方法的一部分或者全部的設備或者裝置程序(例如,計算機程序和計算機程序產品)。這樣的實現本發(fā)明的程序可以存儲在計算機可讀介質上,或者可以具有一個或者多個信號的形式。這樣的信號可以從因特網網站上下載得到,或者在載體信號上提供,或者以任何其他形式提供。
應該注意的是上述實施例對本發(fā)明進行說明而不是對本發(fā)明進行限制,并且本領域技術人員在不脫離所附權利要求的范圍的情況下可設計出替換實施例。在權利要求中,不應將位于括號之間的任何參考符號構造成對權利要求的限制。單詞“包含”不排除存在未列在權利要求中的元件或步驟。位于元件之前的單詞“一”或“一個”不排除存在多個這樣的元件。本發(fā)明可以借助于包括有若干不同元件的硬件以及借助于適當編程的計算機來實現。在列舉了若干裝置的單元權利要求中,這些裝置中的若干個可以是通過同一個硬件項來具體體現。單詞第一、第二、以及第三等的使用不表示任何順序??蓪⑦@些單詞解釋為名稱。
本發(fā)明公開了A1、一種傳輸節(jié)點集群的檢測方法,包括:
調用第一函數向傳輸節(jié)點集群的各個傳輸節(jié)點同時發(fā)送檢測指令,各檢測指令攜帶指示檢測結果在預置數組中存儲位置的文件指針,以由傳輸節(jié)點按照文件指針將檢測結果添加至預置數組;
調用第二函數檢測預置數組的數據更新;
當檢測到存在更新的檢測結果時,調用第三函數從所述預置數組中提取更新的檢測結果;
根據所有傳輸節(jié)點的檢測結果進行傳輸節(jié)點的調用。
A2、根據A1所述的方法,其中,所述調用第一函數向傳輸節(jié)點集群的各個傳輸節(jié)點同時發(fā)送檢測指令包括:
通過第一接口調用第一函數向傳輸節(jié)點集群的各個傳輸節(jié)點同時發(fā)送檢測指令,所述傳輸節(jié)點通過第二接口向預置數組發(fā)送檢測結果,所述第一接口與第二接口相同或不同。
A3、根據A2所述的方法,其中,在所述通過第一接口調用第一函數向傳輸節(jié)點集群的各個傳輸節(jié)點同時發(fā)送檢測指令之前,所述方法還包括:
檢測所述第二接口對檢測結果的當前承載數目;
計算所述第二接口對檢測結果的剩余承載數目;
所述通過第一接口調用第一函數向傳輸節(jié)點集群的各個傳輸節(jié)點同時發(fā)送檢測指令包括:
通過所述第一接口調用所述第一函數向傳輸節(jié)點集群的各個傳輸節(jié)點同時發(fā)送所述剩余承載數目對應的檢測指令。
A4、根據A1所述的方法,其中,所述調用第一函數向傳輸節(jié)點集群的各個傳輸節(jié)點同時發(fā)送檢測指令包括:
調用第一函數向傳輸節(jié)點集群的各個傳輸節(jié)點順序發(fā)送多個檢測任務對應的檢測指令。
A5、根據A4所述的方法,其中,所述調用第一函數向傳輸節(jié)點集群的各個傳輸節(jié)點順序發(fā)送多個檢測任務對應的檢測指令包括:
調用所述第一函數向傳輸節(jié)點集群的各個傳輸節(jié)點發(fā)送一個檢測任務對應的檢測指令后,直接調用向所述第一函數發(fā)送下一個檢測任務對應的多個檢測指令。
A6、根據A4所述的方法,其中,所述調用第一函數向傳輸節(jié)點集群的各個傳輸節(jié)點順序發(fā)送多個檢測任務對應的檢測指令包括:
調用所述第一函數執(zhí)行一個檢測任務,并在提取到所有傳輸節(jié)點對所述檢測任務的檢測結果后,調用所述第一函數執(zhí)行下一個檢測任務。
A7、根據A6所述的方法,其中,在所述調用所述第一函數執(zhí)行下一個檢測任務之前,所述方法還包括:
針對待執(zhí)行的下一個檢測任務,查找記錄的歷史處理時間;
根據查找的所述下一個檢測任務的歷史處理時間,設置所述一個檢測任務和所述下一個檢測任務之間的處理時間間隔;
所述調用所述第一函數執(zhí)行下一個檢測任務包括:
開始執(zhí)行所述一個檢測任務后,按照設置的處理時間間隔,調用所述第一函數執(zhí)行所述下一個檢測任務。
A8、根據A7所述的方法,其中,所述方法還包括:
針對未查找到歷史處理時間的所述下一檢測任務,以其他各個檢測任務的歷史處理時間的均值為歷史處理時間。
A9、根據A7所述的方法,其中,所述方法還包括:
在接收到一個檢測任務對應的所有傳輸節(jié)點的檢測結果后,記錄所述檢測任務的歷史處理時間。
A10、根據A1所述的方法,其中,在所述根據所有傳輸節(jié)點的檢測結果進行傳輸節(jié)點的調用之前,所述方法還包括:
接收第一客戶端對傳輸節(jié)點的調用請求;
所述檢測結果包括傳輸節(jié)點的至少一種運行狀態(tài)參數,所述根據所有傳輸節(jié)點的檢測結果進行傳輸節(jié)點的調用包括:
選取運行狀態(tài)參數滿足設定條件的目標傳輸節(jié)點,并反饋至所述第一客戶端。
A11、根據A1所述的方法,其中,所述根據所有傳輸節(jié)點的檢測結果進行傳輸節(jié)點的調用包括:
根據所述檢測結果識別傳輸節(jié)點是否正常運行;
若識別到某個傳輸節(jié)點未正常運行,則為使用該傳輸節(jié)點的第二客戶端重新分配傳輸節(jié)點。
本發(fā)明還公開了B12、一種傳輸節(jié)點集群的檢測裝置,包括:
檢測指令發(fā)送模塊,用于調用第一函數向傳輸節(jié)點集群的各個傳輸節(jié)點同時發(fā)送檢測指令,各檢測指令攜帶指示檢測結果在預置數組中存儲位置的文件指針,以由傳輸節(jié)點按照文件指針將檢測結果添加至預置數組;
數據更新檢測模塊,用于調用第二函數檢測預置數組的數據更新;
檢測結果提取模塊,用于當檢測到存在更新的檢測結果時,調用第三函數從所述預置數組中提取更新的檢測結果;
傳輸節(jié)點調用模塊,用于根據所有傳輸節(jié)點的檢測結果進行傳輸節(jié)點的調用。
B13、根據B12所述的裝置,其中:
所述檢測指令發(fā)送模塊,具體用于通過第一接口調用第一函數向傳輸節(jié)點集群的各個傳輸節(jié)點同時發(fā)送檢測指令,所述傳輸節(jié)點通過第二接口向預置數組發(fā)送檢測結果,所述第一接口與第二接口相同或不同。
B14、根據B13所述的裝置,其中,所述裝置還包括:
承載數目檢測模塊,用于在所述通過第一接口調用第一函數向傳輸節(jié)點集群的各個傳輸節(jié)點同時發(fā)送檢測指令之前,檢測所述第二接口對檢測結果的當前承載數目;
剩余承載數目計算模塊,用于計算所述第二接口對檢測結果的剩余承載數目;
所述檢測指令發(fā)送模塊,具體用于通過所述第一接口調用所述第一函數向傳輸節(jié)點集群的各個傳輸節(jié)點同時發(fā)送所述剩余承載數目對應的檢測指令。
B15、根據B12所述的裝置,其中:
所述檢測指令發(fā)送模塊,具體用于調用第一函數向傳輸節(jié)點集群的各個傳輸節(jié)點順序發(fā)送多個檢測任務對應的檢測指令。
B16、根據B15所述的裝置,其中,所述檢測指令發(fā)送模塊包括:
第一檢測指令發(fā)送子模塊,用于調用所述第一函數向傳輸節(jié)點集群的各個傳輸節(jié)點發(fā)送一個檢測任務對應的檢測指令;
第二檢測指令發(fā)送子模塊,用于在發(fā)送一個檢測任務對應的檢測指令后,直接調用向所述第一函數發(fā)送下一個檢測任務對應的多個檢測指令。
B17、根據B15所述的裝置,其中,所述檢測指令發(fā)送模塊包括:
第一檢測任務執(zhí)行子模塊,用于調用所述第一函數執(zhí)行一個檢測任務;
第二檢測任務執(zhí)行子模塊,用于在提取到所有傳輸節(jié)點對所述檢測任務的檢測結果后,調用所述第一函數執(zhí)行下一個檢測任務。
B18、根據B17所述的裝置,其中,所述裝置還包括:
歷史處理時間查找模塊,用于在所述調用所述第一函數執(zhí)行下一個檢測任務之前,針對待執(zhí)行的下一個檢測任務,查找記錄的歷史處理時間;
處理時間間隔設置模塊,用于根據查找的所述下一個檢測任務的歷史處理時間,設置所述一個檢測任務和所述下一個檢測任務之間的處理時間間隔;
所述第二檢測任務執(zhí)行子模塊,具體用于開始執(zhí)行所述一個檢測任務后,按照設置的處理時間間隔,調用所述第一函數執(zhí)行所述下一個檢測任務。
B19、根據B18所述的裝置,其中,所述裝置還包括:
歷史處理時間確定模塊,用于針對未查找到歷史處理時間的所述下一檢測任務,以其他各個檢測任務的歷史處理時間的均值為歷史處理時間。
B20、根據B18所述的裝置,其中,所述裝置還包括:
歷史處理時間記錄模塊,用于在接收到一個檢測任務對應的所有傳輸節(jié)點的檢測結果后,記錄所述檢測任務的歷史處理時間。
B21、根據B12所述的裝置,其中,所述裝置還包括:
調用請求接收模塊,用于在所述根據所有傳輸節(jié)點的檢測結果進行傳輸節(jié)點的調用之前,接收第一客戶端對傳輸節(jié)點的調用請求;
所述傳輸節(jié)點調用模塊,具體用于選取運行狀態(tài)參數滿足設定條件的目標傳輸節(jié)點,并反饋至所述第一客戶端,所述檢測結果包括傳輸節(jié)點的至少一種運行狀態(tài)參數。
B22、根據B12所述的裝置,其中,所述傳輸節(jié)點調用模塊包括:
運行狀態(tài)識別子模塊,用于根據所述檢測結果識別傳輸節(jié)點是否正常運行;
節(jié)點重新分配子模塊,用于若識別到某個傳輸節(jié)點未正常運行,則為使用該傳輸節(jié)點的第二客戶端重新分配傳輸節(jié)點。