学生 + NFS + 开发工具的体验非常慢

学生 + NFS + 开发工具的体验非常慢

我在一所学校教学生编程,学生们都可以登录任何一台计算机;他们的会话文件由一个公共 NFS 服务器存储。当我们使用要求高的工具(即 VSCode、Android Studio 或其他框架,如 Symfony 或 React)时,执行时间非常慢。让学生在本地目录中工作/tmp是一个很好的解决方法,但也有点令人难过。

我是不是系统管理员,但我希望了解这里可能出现的问题:

  1. 在 NFS 上共享会话文件时,我们需要检查哪些常见的陷阱?
  2. 考虑到我们有大约 100 名学生同时工作,我的理解是上游 SSD 的性能无论如何都会高度分散,那么您认为这种架构可行吗?
  3. 出于许多其他原因,我建议我们改用笔记本电脑,如果撇开成本因素,这是否是更合理的选择?

答案1

要回答您的问题,您需要更深入地了解您的工作量和瓶颈。因此,第一步您应该分析您的 NFS 服务器,了解它面临哪种负载以及它为什么会变慢。

如果没有这些信息,我只能提供一般性建议:

  • 您描述的应用程序(例如:Android Studio)使用许多小文件。这种访问模式对元数据开销非常敏感,因此您应该探索 NFS 客户端的各种数据和元数据缓存功能(即:)ac。无论如何,请务必阅读并了解缓存和其他优化如何影响数据一致性,方法是阅读nfs 手册页
  • 为了更轻松地吸收随机写入,您可以探索asyncNFS 服务器选项,至少进行一些测试。请注意,这可能会导致数据丢失,因此请务必了解其含义。再次,请阅读相关手册页
  • 在高负载时,使用它iostat -x来检查服务器磁盘利用率和延迟。也许你“只是”缺少硬件资源

无论如何,高性能 NFS 绝不是一个简单的设置。你可能需要如果您希望这样的设置表现良好,则需要一名熟练的系统管理员。

相关内容