标签:linux ssd cache bcache hard-disk
我有一个文件服务器,其中有一堆磁盘在BTRFS池中一起运行,并且想要添加一个SSD用于缓存.我主要不是在加快速度,而是想抓住常规的小型访问,以便能够在大量使用时关闭硬盘(不全天候运行它们将节省能源并且应该使磁盘持续时间更长).
据我所知,目前在Linux,dm-cache和bcache中实现了两种SSD缓存技术. dm-cache仍被告知效率更高,但两者都在进行开发,我不需要调整绝对最大效率.
阅读bcache’s documentation,我遇到了这些选择:
writeback_delay: When dirty data is written to the cache and it
previously did not contain any, waits some number of seconds before
initiating writeback. Defaults to
30.writeback_percent: If nonzero, bcache tries to keep around this
percentage of the cache dirty by throttling background writeback and
using a PD controller to smoothly adjust the rate.writeback_running: If off, writeback of dirty data will not take
place at all. Dirty data will still be added to the cache until it
is mostly full; only meant for benchmarking. Defaults to on.
为writeback_delay设置足够大的值似乎可以为我完成这项工作:每小时只写回一次,或者(如果缓存运行完全,我认为会发生这种情况).
这是一个合理的设置,我是否还考虑了其他任何可以成功旋转磁盘的东西?如果满足我的要求,我也可以选择完全不同的路线.
似乎@gorkypl是looking for another solution on a similar problem,但是有不同的要求和环境,但也没有得到答案.
解决方法:
我认为你的方法太复杂了.
读取缓存:这里没什么可做的.如果你有足够的内存,这将在linux中自动完成.
写缓存基本上这就是你想要的.但是如果最后写入磁盘也会导致唤醒.
因此,您可以将受影响的文件系统直接放在ram-disk / dev / shm或ssd上.
省电:我不认为频繁的降速/升频会节省电力.相反,磁盘可能会提前死亡,因此生产过程会产生额外的能耗.旋转也非常耗电.
标签:linux,ssd,cache,bcache,hard-disk 来源: https://codeday.me/bug/20190809/1633014.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。