我有一个网络20 machines
,运行着 Ubuntu 10.04。
每台机器大约有 200[GB] 的数据,我想与所有其他机器共享这些19 machines
数据只读目的. 应以最快的方式完成阅读。
一位朋友建议我研究一下如何设置 HTTP/FTP。这确实是在机器之间共享数据的最佳方式吗(比 NFS 更好)?如果是,我该怎么做?
是否有一个python
模块可以帮助访问/读取数据?
更新:只是为了澄清一下,我想要的只是能够(从机器内部X
)访问机器Y
的一个文件并将其加载到内存中。所有文件的大小都是统一的(500 [KB])。哪种方法最快(SAMBA / NFS / HTTP / FTP)?
答案1
有数百种方法可以解决这个问题。您可以通过 fuse 安装 FTP 或 HTTP 文件系统,甚至可以使用 NFS(为什么不呢?)。搜索 httpfs2 或 curlftpfs(或甚至 sshfs,如果您追求性能,则不应使用)
但我发现的问题是,你有一个唯一主机的单点故障。为什么不分散存储呢?
我通常使用 glusterfs [1],它速度很快,并且可以在不同模式下使用。
答案2
您python
可以通过存储数据的目录中的简单单行命令启动网络服务器。
python -m SimpleHTTPServer
编辑:
它在端口 8000 上创建了一个简单的 Web 服务器,关于性能,我无法告诉你太多,对于这类问题,最好在 SuperUser 中询问,而不是在 SO 中询问。
它不会自动启动,但实现起来并不难。