我在Hetzner 储物盒至于远程安装这些,我可以选择 WebDAV、CIFS 或 sshfs。
一旦安装,这些文件将由洗手液。这里的问题是,liquidsoap 可以很多文件系统open
(为了计算音轨时长、混音、选择……)。特别是因为我的脚本在包含许多文件(10k+)的目录中创建随机播放列表是值得考虑的可能性)。
在设置一些测试之前,我正在寻找有关这三个挂载选项的一些社区建议,特别是有关以下几点:
- 缓存。这可能是最重要的一点。如前所述,liquidsoap 确实很多
open
的文件系统将所有打开的文件保存在缓存中(即使它们已关闭),这将很快填满本地磁盘空间,并使远程存储这些文件的目的落空。最重要的是,其他服务可能会在远程文件系统上进行更改,这些必须立即反映出来(例如,我们不希望liquidsoap尝试传输已被删除的文件)。 - 速度. 它需要快速,liquidsoap 必须获取数据和在流式传输变得太晚之前进行计算。
- 安全。这些文件都是公共领域的,并且是共享的(另一项服务建议下载这些文件),因此读取权限不是太大的问题。但写入权限必须是安全的。
如果其他解决方案符合我的要求,我愿意接受。
[编辑]
我做了一些基准测试,3 个相同的服务器,除了用于挂载远程存储的文件系统。
- 应用程序:azuracast(因为它是最终使用的应用程序,所以不妨对整个产品进行基准测试)
- 配置:完整的网络电台。25k+ 个文件,具有调度、交叉淡入淡出...和转码为 15 个流(HLS/AAC、mp3、OGG/Flac,每个都有 5 种不同的质量设置)
服务器启动和库扫描:
- 标记1:docker compose up -d
- 标记2:所有服务都已启动
- 标记3:扫描完成,CIFS
- 标记 4:扫描完成,DAVFS
- 标记5:扫描完成:SSHFS
看来 CIFS 是这里的最佳选择。特别是因为我不需要复杂的 ACL(存储提供商无论如何都会将所有内容映射到同一个用户)。
不过,我对此有两个问题,希望得到任何确认/建议:
- 流量未加密,但由于所有数据都是公开的,所以这不是问题,不是吗?
- 验证是加密后,所以不存在任何人获得对我的数据的写访问权限的风险(至少通过这个向量),对吗?
谢谢