2012-02-08 82 views
2

您好,我正在開發一個java中的負載均衡算法。在我的系統中將有一個主節點和n個從節點。 mater節點將接收查詢分配給它的從節點。但是,在將查詢分配給其從屬節點之一之前,我想測量從節點中的當前負載以檢查特定從節點是否能夠處理該請求。而且我還可以跟蹤哪個節點過載以及哪個節點負載最少。如何查找遠程系統的CPU負載

任何人都可以告訴我,是否有任何建立在Java中的函數(通過包括一些.jar文件)來查找從節點的負載..?我是否可以使用JMX來做到這一點..?

回答

1

我認爲OperatingSystemMXBean的getSystemLoadAverage()是你所需要的。

有關遠程訪問此JMX bean的信息,請閱讀Remote Monitoring and Management文檔。

+0

謝謝你的回覆。由於我沒有使用JMX,所以我有幾個簡單的問題。 getSystemLoadAverage()用於找出節點的當前負載。但是如何確定從節點是否能夠處理傳入請求而不會超載。 – shagul 2012-02-08 13:33:33

+0

我想如果我們能夠發現,從節點支持的最大負載和傳入請求的處理時間,我們可以推導出找到我們需要的數學方程。所以請告訴我是否可以找出節點可以支持的最大負載以及傳入請求將在節點上注入多少負載..? – shagul 2012-02-08 13:38:44

+0

這些確實是非常有趣的問題,他們應該有一個獨立的線程開始。 – 2012-02-08 14:29:26