21 个版本
0.10.0 | 2024 年 8 月 13 日 |
---|---|
0.9.1 | 2023 年 12 月 20 日 |
0.9.0 | 2023 年 11 月 6 日 |
0.8.1 | 2023 年 7 月 24 日 |
0.4.3 | 2021 年 9 月 28 日 |
#55 在 缓存
345 每月下载
用于 13 个库 (10 个直接)
62KB
1.5K SLoC
freqfs
基于 tokio::fs 的内存文件系统缓存层,采用最不常用逐出策略
lib.rs
:
freqfs
是在 tokio::fs
之上的内存缓存层,采用最不常用逐出策略。
freqfs
会自动缓存最常使用的文件,并将其他文件备份到磁盘。这允许开发者纯粹在内存中创建和更新大量数据集合,而无需显式同步到磁盘,同时仍然可以在内存极低的宿主上运行。这对于网络服务、数据库和数据科学应用特别有用。
请参阅 示例目录 以获取详细的使用示例。
此库假定文件路径是有效的 Unicode,如果遇到无效的 Unicode 文件路径,可能会引发 panic。
它还假定在缓存根目录(即传递给 load
的路径)下的所有文件 I/O 都通过缓存路由(例如,不是通过 tokio::fs
或 std::fs
)。如果此假设不成立,可能会引发 std::io::Error
或 panic。
如果您的程序可能没有权限写入文件系统条目,在修改之前请确保检查权限。后台清理线程如果尝试进行不允许的写操作,将会 panic。
依赖项
约 4-6.5MB
约 111K SLoC