System.ArgumentOutOfRangeException: 索引和長度必須引用該字符串內的位置。 參數名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技術實現步驟摘要】
本公開涉及計算機信息處理領域,具體而言,涉及一種用于服務器的健康監測方法及裝置。
技術介紹
1、健康檢查是一種用于監測網絡故障的技術,通常配置在網絡設備上,用以在網絡中出現鏈路故障時,及時感知并做出響應。例如,負載均衡設備會根據健康監測結果重新分配網絡流量,確保流量發送到正常的鏈路上,避免因將流量發送到故障鏈路而導致網絡不通的問題。
2、隨著網絡的快速發展,業務數量不斷增加,健康監測流量的規模也隨之急劇增長,給服務器和負載設備帶來了大量額外負擔,影響了系統的整體性能。
3、在現有技術中,設備會持續向目標服務器的ip地址(server_ip)發送探測報文,如icmp或tcp報文,探測報文的發送間隔時間通常是可配置的。如果在預定時間內收到服務器的響應報文,則認為該服務器狀態正常;否則認為服務器不可用。
4、現有技術中的這種方式,主動健康監測會增加服務器和負載均衡設備的負載,且隨著業務量的增長,這種負擔會變得更加明顯,即使在沒有業務流量時,也可能導致設備的高并發問題。而且,主動健康監測由于存在固定的監測間隔,無法及時發現服務器故障。如果服務器出現短暫故障,主動監測無法保證能準確捕捉到,可能導致未能及時應對問題。
5、因此,需要一種新的用于服務器的健康監測方法及裝置。
6、在所述
技術介紹
部分公開的上述信息僅用于加強對本申請的背景的理解,因此它可以包括不構成對本領域普通技術人員已知的現有技術的信息。
技術實現思路
1、有鑒于此,本申
2、本申請的其他特性和優點將通過下面的詳細描述變得顯然,或部分地通過本申請的實踐而習得。
3、根據本申請的一方面,提出一種用于服務器的健康監測方法,該方法包括:負載均衡設備在獲取到流量數據時,根據流量調度算法確定目標服務器;向所述目標服務器發送用于建立連接的tcp報文,并記錄報文發送時間;獲取所述目標服務器的返回報文,記錄報文返回時間和報文返回類型;根據所述報文發送時間、所述報文返回時間和所述報文返回類型對所述目標服務器進行健康監測。
4、在本申請的一種示例性實施例中,還包括:在確定所述目標服務器的健康狀態為正常時,將流量數據發送到所述目標服務器進行處理;在確定所述目標服務器的健康狀態為異常時,將所述目標服務器標記為無效。
5、在本申請的一種示例性實施例中,還包括:定時將無效的服務器標記為有效,并進行重試驗證以確定所述服務器的健康狀態。
6、在本申請的一種示例性實施例中,獲取所述目標服務器的返回報文,記錄報文返回時間和報文返回類型,包括:在所述目標服務器的返回報文為syn+ack類型時,記錄報文返回時間;在所述目標服務器的返回報文不為syn+ack類型時,不記錄報文返回時間。
7、在本申請的一種示例性實施例中,根據所述報文發送時間、所述報文返回時間和所述報文返回類型對所述目標服務器進行健康監測,包括:根據所述報文發送時間、所述報文返回時間和所述報文返回類型更新所述目標服務器對應的失敗計數;在所述失敗計數小于閾值時,確定所述目標服務器的健康狀態為正常;在所述失敗計數大于等于閾值時,確定所述目標服務器的健康狀態為異常。
8、在本申請的一種示例性實施例中,根據所述報文發送時間、所述報文返回時間和所述報文返回類型更新所述目標服務器對應的失敗計數,包括:在所述報文的返回類型不為syn+ack類型時,所述目標服務器對應的失敗計數增加1;在無返回報文時,所述目標服務器對應的失敗計數增加1;在所述報文的返回類型為syn+ack類型,且所述報文返回時間和報文發送時間之間的差值大于時間閾值時,所述目標服務器對應的失敗計數增加1。
9、在本申請的一種示例性實施例中,根據所述報文發送時間、所述報文返回時間和所述報文返回類型更新所述目標服務器對應的失敗計數,還包括:定時將所述目標服務器對應的失敗計數清零。
10、在本申請的一種示例性實施例中,進行重試驗證以確定所述服務器的健康狀態,包括:向進行重試驗證的所述服務器發送用于建立連接的tcp報文,并記錄報文發送時間;獲取重試驗證的所述服務器的返回報文,記錄報文返回時間和報文返回類型;根據所述報文發送時間、所述報文返回時間和所述報文返回類型對重試驗證的所述服務器進行健康監測。
11、在本申請的一種示例性實施例中,根據所述報文發送時間、所述報文返回時間和所述報文返回類型對重試驗證的所述服務器進行健康監測,包括:根據所述報文發送時間、所述報文返回時間和所述報文返回類型更新重試驗證的所述服務器對應的失敗計數;在失敗計數為0時,重新將所述服務器設置為有效;在失敗計數為1時,繼續將所述服務器設置為無效。
12、根據本申請的一方面,提出一種用于服務器的健康監測裝置,該裝置包括:調度模塊,用于負載均衡設備在獲取到流量數據時,根據流量調度算法確定目標服務器;發送模塊,用于向所述目標服務器發送用于建立連接的tcp報文,并記錄報文發送時間;返回模塊,用于獲取所述目標服務器的返回報文,記錄報文返回時間和報文返回類型;監測模塊,用于根據所述報文發送時間、所述報文返回時間和所述報文返回類型對所述目標服務器進行健康監測。
13、根據本申請的一方面,提出一種電子設備,該電子設備包括:一個或多個處理器;存儲裝置,用于存儲一個或多個程序;當一個或多個程序被一個或多個處理器執行,使得一個或多個處理器實現如上文的方法。
14、根據本申請的一方面,提出一種計算機可讀介質,其上存儲有計算機程序,該程序被處理器執行時實現如上文中的方法。
15、根據本申請的用于服務器的健康監測方法及裝置,通過負載均衡設備在獲取到流量數據時,根據流量調度算法確定目標服務器;向所述目標服務器發送用于建立連接的tcp報文,并記錄報文發送時間;獲取所述目標服務器的返回報文,記錄報文返回時間和報文返回類型;根據所述報文發送時間、所述報文返回時間和所述報文返回類型對所述目標服務器進行健康監測的方式,解決了傳統主動健康監測無法及時發現故障且增加服務器和負載設備負擔的問題,能夠有效減輕服務器和負載設備的壓力,使負載設備能夠及時發現服務器故障,降低網絡異常的風險。
16、應當理解的是,以上的一般描述和后文的細節描述僅是示例性的,并不能限制本申請。
本文檔來自技高網...【技術保護點】
1.一種用于服務器的健康監測方法,其特征在于,包括:
2.如權利要求1所述的方法,其特征在于,還包括:
3.如權利要求2所述的方法,其特征在于,還包括:
4.如權利要求1所述的方法,其特征在于,獲取所述目標服務器的返回報文,記錄報文返回時間和報文返回類型,包括:
5.如權利要求1所述的方法,其特征在于,根據所述報文發送時間、所述報文返回時間和所述報文返回類型對所述目標服務器進行健康監測,包括:
6.如權利要求5所述的方法,其特征在于,根據所述報文發送時間、所述報文返回時間和所述報文返回類型更新所述目標服務器對應的失敗計數,包括:
7.如權利要求6所述的方法,其特征在于,根據所述報文發送時間、所述報文返回時間和所述報文返回類型更新所述目標服務器對應的失敗計數,還包括:
8.如權利要求3所述的方法,其特征在于,進行重試驗證以確定所述服務器的健康狀態,包括:
9.如權利要求8所述的方法,其特征在于,根據所述報文發送時間、所述報文返回時間和所述報文返回類型對重試驗證的所述服務器進行健康監測,包
10.一種用于服務器的健康監測裝置,其特征在于,包括:
...【技術特征摘要】
1.一種用于服務器的健康監測方法,其特征在于,包括:
2.如權利要求1所述的方法,其特征在于,還包括:
3.如權利要求2所述的方法,其特征在于,還包括:
4.如權利要求1所述的方法,其特征在于,獲取所述目標服務器的返回報文,記錄報文返回時間和報文返回類型,包括:
5.如權利要求1所述的方法,其特征在于,根據所述報文發送時間、所述報文返回時間和所述報文返回類型對所述目標服務器進行健康監測,包括:
6.如權利要求5所述的方法,其特征在于,根據所述報文發送時間、所述報文返回時...
【專利技術屬性】
技術研發人員:尤圣德,孫艷杰,萬卿,
申請(專利權)人:杭州迪普科技股份有限公司,
類型:發明
國別省市:
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。