我有一个自托管网站,允许用户登录并查看存储在网络上不同文件中的数据。Web 服务器正在运行一项服务,该服务可访问数据并将其发送给用户。
设置很简单:Web 服务器是一台专用机器,通过千兆 LAN 与其他数据服务器联网。Web 服务通过简单的 SMB 文件共享访问数据。它对网络一无所知,只是使用简单的文件路径,例如\\dataserver1\foo\bar.jpg
。每个数据服务器都存储了数 TB 的数据。
我注意到数据访问速度比我预期的要慢一些。这是让用户可以使用数据的最佳方式吗?有没有比 SMB 文件共享更好、更高效的解决方案?该系统完全基于 Windows。
答案1
\嗯,首先 - 我会删除 \\dataserver1\ - 我真的很喜欢使用 DFS 来组织我的共享,层次结构中不包含服务器名称。允许在稍后阶段进行复制等。
话虽如此,您基本上已经完成了。您需要找出瓶颈所在。在 2008R2 上,文件共享并不是特别慢。但对于大文件,网络可能会很慢(千兆局域网 - 抱歉 - 并不是很快,您在这里只能获得每秒 80mbite)。您可能还会遇到内存问题或磁盘 IO 工作过度 - 所以我建议对您的存储服务器进行性能分析。
您能否更新您的问题并提供更详细的分析?考虑到“TB 级数据”,我假设您可能会遇到 Web 服务器至少在其自身一侧网络饱和的问题,在这种情况下,唯一的解决方案是使用至少具有 1-2 个 10gbit 端口的交换机(或允许绑定的卡)。即使单个服务器提供的流量不超过 1gbit - 单个 Web 服务器一侧也可能超载。
有多少处理?有多少 hdata 被“丢弃”在 Web 服务器上?如果数量很多,则用服务器上预先过滤数据的 Web 服务替换 SMB 共享,这样丢弃部分就会发生在单个存储服务器上。
真的取决于你用它做什么,而你在这里没有给我们足够的信息来让我们做出完全无根据的猜测。