【发布时间】:2013-08-30 17:14:58
【问题描述】:
/dev/shm 是否仅适用于临时文件?我的服务器上有很多内存,我想使用共享内存来存储 sphinx 索引文件。它有多安全?
【问题讨论】:
标签: mysql linux memory sphinx search
/dev/shm 是否仅适用于临时文件?我的服务器上有很多内存,我想使用共享内存来存储 sphinx 索引文件。它有多安全?
【问题讨论】:
标签: mysql linux memory sphinx search
你说的安全是什么意思?
当然,它不会在重启(强制或计划)后继续存在。但总的来说 sphinx 索引文件是一次性的。可以通过索引器按需重新生成 - 因此可以在启动时运行索引器以创建所有索引文件。
但它工作得很好。一旦在那里写入文件,操作系统就不应将其删除。
在实践中,我没有发现它提供了太多的性能优势。 Searchd 被很好地优化以应对“慢”磁盘(例如,无论如何都将重要的东西缓存在内存中)。当然是 YMMV!
(正因为如此,它确实意味着一些东西会在内存中重复——一次在 /dev/shm 中,然后在 searchd 进程中。你必须考虑到这一点,不要导致机器交换!)
它确实产生更显着差异的地方是索引,它看到写入内存的性能大幅提升。但总的来说,它只写一次,多读。并且索引是“离线”执行的,因此那里的性能并不那么重要。
【讨论】: