【问题标题】:How non blocking read/write throught remote FileSystem如何通过远程文件系统进行非阻塞读/写
【发布时间】:2010-12-13 13:00:34
【问题描述】:

有没有办法在远程文件系统(例如 NFS、SSHFS 或 sambafs)上写入和读取文件 以一种读取或写入甚至打开立即返回错误代码的方式? 事实上,我正在使用 Twisted,我想知道是否有一种安全的方法可以访问远程文件而不会阻塞我的反应器。

【问题讨论】:

    标签: python networking filesystems twisted


    【解决方案1】:

    在 Twisted 中,对于远程文件系统,就像任何其他阻塞调用一样,您可以使用 threads.deferToThread——一种相当优雅的方式来处理讨厌的阻塞系统调用!-)

    【讨论】:

      【解决方案2】:

      这实际上与我提出的问题here 非常相似。目前看来,绕过操作系统限制的唯一方法是使用线程或外部进程为您处理文件 IO。

      在以前的生活中(非 python 或扭曲,但非常异步),我们最终将文件 IO 抽象到一个单独的守护进程中,该守护进程本质上是我们的“文件系统工作者”。

      2.6.x 版本的 linux 似乎在内核级别增加了对异步 IO 的更多支持,libaio 是对它的支持,但它看起来很神秘,而且它实际支持的内容相当可疑。

      【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-07-15
      • 1970-01-01
      • 2012-06-19
      • 1970-01-01
      • 1970-01-01
      • 2017-02-18
      相关资源
      最近更新 更多