2011-05-03 78 views
1

我已經編寫了基於客戶端 - 服務器的分佈式文件系統的模擬器。我們計算平均塊存取時間,我想以下幾點:一般知識問題:網絡訪問時間,緩存訪問時間,磁盤訪問時間

  1. 本地緩存訪問時間
  2. 客戶端到客戶端緩存訪問時間(同一網絡)
  3. 客戶端到服務器高速緩存訪​​問時間(不同網絡)
  4. 客戶端磁盤訪問時間

假設如果塊大小爲64MB ...

有限公司任何一個給我近似的時間... 鏈接證明它將不勝感激...

謝謝。

+0

「本地緩存」 訪問時間?你的意思是來自主內存嗎? – BeeOnRope 2011-05-03 18:11:08

+0

另外,你是什麼意思「同一網絡」vs「不同的網絡」? – BeeOnRope 2011-05-03 18:11:38

+0

是的,本地緩存=主內存...和同一個網絡vs不同的網絡...服務器是遠離存儲庫的類...客戶端是使用它的一個網絡中的一組節點...假設,谷歌的文件系統。 ..所以他們的服務器和客戶端是一個組織中的電腦...... – 2011-05-03 18:16:58

回答

0

你爲什麼不簡單測量它?

對於網絡,請使用ping命令測量延遲,並將可用帶寬除以64MB以獲得傳播延遲。對於文件使用cat,主內存,使用

public static void main(String[] args) { 
    byte[] data = new byte[64*1024*1024]; 
    long start = System.nanoTime(); 
    int sum = 0; 
    for (byte b : data) { 
     sum += b; 
    } 
    long end = System.nanoTime(); 
    System.out.println(new BigDecimal(end - start).movePointLeft(9)); 
} 

你是什麼意思哪一個對我的機器產量

0.209555405

+0

我沒有實現真正的系統,它是模擬的,所以我可以像上面提到的那樣獲取本地訪問時間,但其他時間如何? – 2011-05-03 18:39:02

+0

通過使用ping和cat ... – meriton 2011-05-03 19:09:08