【发布时间】:2018-01-26 00:38:52
【问题描述】:
我正在将带有 Grunt 文件监视的现有项目移植到 Docker 开发容器。源文件被绑定挂载到容器中,Grunt 监视文件的变化(这可能可以优化,但我目前关心的是:只需让当前设置在 Docker 中工作)。
在 Mac 上,我遇到了巨大的 CPU 使用率,因此我阅读了 osxfs 的 performance tuning guide。该指南提到了cached 和delegated 音量模式。
delegated 的描述说:
容器的视图是权威的 (在容器更新出现在主机之前允许延迟)
对于cached:
[...] 提供委托配置的所有保证,以及围绕容器执行的写入可见性的一些额外保证。因此,缓存通常会提高读取繁重工作负载的性能,但代价是主机和容器之间存在一些暂时的不一致。
与哪个设置相比cached提高性能?从容器的角度来看是“读取繁重的工作负载”吗?
长话短说:对于使用文件监视的开发环境,降低 CPU 使用率的最佳设置是什么? cached 或 delegated?
【问题讨论】:
标签: macos docker gruntjs watch