【问题标题】:How to avoid pauses when editing code on a network drive?在网络驱动器上编辑代码时如何避免暂停?
【发布时间】:2008-08-29 02:22:16
【问题描述】:

我计划在家进行更多编码,但为了做到这一点,我需要能够在我们的开发服务器上编辑 Samba 驱动器上的文件。我遇到的几个编辑器的问题是网络延迟导致编辑器长时间锁定(Eclipse,TextMate)。一些编辑器比其他编辑器处理得更好,但是我可以做任何文件系统或其他调整来最大程度地减少延迟的影响吗?

补充几点:

  • 有一项政策禁止在个人计算机上保存公司数据,所以我想避免在本地检查代码。
  • 安装通过 PPTP VPN 连接。
  • 安装到 Linux 或 OS X 客户端

【问题讨论】:

  • 我在 Samba 中使用 Virtualbox,所以我在 Netbeans 和 Textmate 中遇到了这个问题。 Sublime Text 2 似乎处理得更好。

标签: networking text-editor textmate samba


【解决方案1】:

使用源代码控制系统——Subversion、Perforce、Git、Mercurial、Bazaar 等——因此您永远不会在共享服务器上编辑代码。相反,您应该编辑本地工作区并将更改提交到位于网络上的存储库。

另外,说服您的公司调整他们的政策,以便在个人计算机上允许公司代码如果它位于加密卷上。您可以为此使用的加密磁盘映像微不足道使用磁盘工具创建,并且可以使用强加密。通过不在钥匙串中存储加密密码,而是在每次挂载加密卷时输入密码,您可以获得更高的安全性;这意味着即使您的本地用户帐户被盗用,只要您没有挂载该卷,其他任何人都无法挂载它。

我在咨询时一直这样做,而我的客户(其中一些对公司代码有类似的规则)在我解释了事情的运作方式后,都没有遇到过问题。 (我认为他们中的一些人甚至开始在他们的办公室内使用加密磁盘映像。)

【讨论】:

    【解决方案2】:

    Remate 插件只是禁用了这个可怕的焦点刷新功能。

    下载、解压、双击并从“窗口”菜单中选择“重新获得焦点时禁用刷新”(您可以通过右键单击抽屉中的项目手动刷新)。瞧!

    【讨论】:

    • 谢谢,我会试试的。不过,我大部分时间都接受了图像加密/结帐解决方案。
    【解决方案3】:

    如果您从您的个人计算机访问数据,它在您的 RAM 中,所以我们假设您不能将其存储在您的硬盘驱动器、软盘、U 盘等上。

    您的解决方案是 RAM 驱动器。使用您喜欢的任何方法(我建议源代码管理)复制您需要在那里编辑的文件,然后您可以毫无延迟地编辑它们。完成后将它们提交回服务器。

    正如所指出的,您的编辑器可能正在缓存对临时目录的更改,甚至可能是您的交换文件(如果它在内存中,那么它可以被换出)。解决方案是获得更大的 RAM 驱动器并在 RAM 驱动器中运行虚拟机。不确定您正在运行什么操作系统,但如果您所做的只是编辑源代码,您可以轻松安装大多数操作系统。

    如果你没有足够的内存,那就买一个技嘉 i-RAM 固态驱动器并取出电池,这样当你断电时它会失去一切。

    将您的 VMWare 设置为不允许操作系统交换任何虚拟机。在您的硬盘驱动器上保留一个基准虚拟机,并在启动之前将其复制到您的 RAM 驱动器。然后你可以像使用硬盘一样在 VM 中使用硬盘,即使它是 RAM。

    在关闭电源之前在 RAM 驱动器上运行安全擦除可能是个好主意。还要记住,他们发现如果在将 RAM 芯片从正常运行的计算机中取出之前对其进行超冷处理,并且足够快地将其放入新计算机中,数据可能仍然完好无损。

    我想这一切都取决于该政策的详细程度以及如何解释。

    祝你好运!

    【讨论】:

      【解决方案4】:

      简短的回答:你无能为力。 CIFS 真正面向具有相当平静流量的 LAN,因此您通过 VPN 访问共享时不会遭受间歇性延迟的可能性为零。编辑器在某些时候需要在阻塞 IO 的情况下访问文件,因为否则没有实际意义。

      您可以切换编辑器并使用 Emacs + TRAMP,它适用于处理远程文件。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2010-11-11
        • 2020-07-28
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多