【问题标题】:General Knowledge Question: Network Access Time, Cache Access Time, Disk Access Time常识题:网络访问时间、缓存访问时间、磁盘访问时间
【发布时间】:2011-08-17 22:33:51
【问题描述】:

我编写了一个基于客户端-服务器的分布式文件系统的模拟器。现在要计算平均块访问时间,我想要以下内容:

  1. 本地缓存访问时间
  2. 客户端到客户端缓存访问时间(同一网络)
  3. 客户端到服务器缓存访问时间(不同网络)
  4. 客户端到磁盘的访问时间

假设块大小为 64MB...

谁能给我大概的时间... 证明它的链接将不胜感激......

谢谢。

【问题讨论】:

  • 什么是“本地缓存”访问时间?你的意思是从主内存?
  • 另外,“同一网络”与“不同网络”是什么意思?
  • 是的,本地缓存 = 主内存...并且相同的网络与不同的网络...服务器是一种遥远的存储库...而客户端是使用它的一个网络中的一组节点.. . 假设,谷歌的文件系统......所以他们的服务器和客户端是一个组织中的计算机......

标签: java networking distributed-caching distributed-system


【解决方案1】:

你为什么不简单地测量它?

对于网络,使用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

【讨论】:

  • 我没有实现真正的系统,它是模拟的,所以我可以得到你提到的本地访问时间,但其他时间呢?
猜你喜欢
  • 1970-01-01
  • 2013-06-14
  • 2018-08-02
  • 1970-01-01
  • 2016-04-11
  • 2015-08-04
  • 1970-01-01
  • 2016-06-08
  • 2014-05-09
相关资源
最近更新 更多