Rename product to Warpgate — Make your NAS feel local
- Rename NAS Cache Proxy → Warpgate throughout PRD - Update CLI commands: nas-cache → warpgate - Update paths: /mnt/ssd/nas-cache → /mnt/ssd/warpgate - Rename file: nas-cache-proxy-prd-v3.md → warpgate-prd-v3.md Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
parent
c3b458bced
commit
aa2db2bf5f
@ -1,4 +1,4 @@
|
|||||||
# NAS Cache Proxy — 产品方案与需求描述(v3)
|
# Warpgate — Make your NAS feel local — 产品方案与需求描述(v3)
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
@ -77,7 +77,7 @@
|
|||||||
|
|
||||||
### 3.3 多协议对外服务(设计讨论)
|
### 3.3 多协议对外服务(设计讨论)
|
||||||
|
|
||||||
**问题**:客户端 → Cache Proxy 之间只支持 SMB 是否足够?
|
**问题**:客户端 → Warpgate 之间只支持 SMB 是否足够?
|
||||||
|
|
||||||
**讨论**:不同客户端设备对协议的偏好不同。macOS + Lightroom 最适合 SMB,但 Linux 客户端用 NFS 性能更好(内核级支持,且 Linux 侧还能再叠一层 FS-Cache),iPad/移动端 App 则普遍支持 WebDAV。
|
**讨论**:不同客户端设备对协议的偏好不同。macOS + Lightroom 最适合 SMB,但 Linux 客户端用 NFS 性能更好(内核级支持,且 Linux 侧还能再叠一层 FS-Cache),iPad/移动端 App 则普遍支持 WebDAV。
|
||||||
|
|
||||||
@ -178,7 +178,7 @@
|
|||||||
利用 Samba 原生 Time Machine 支持,让 macOS 用户的 Mac 出差时也有本地备份兜底。
|
利用 Samba 原生 Time Machine 支持,让 macOS 用户的 Mac 出差时也有本地备份兜底。
|
||||||
|
|
||||||
- Samba 配置开启 `fruit:time machine = yes`
|
- Samba 配置开启 `fruit:time machine = yes`
|
||||||
- **Time Machine 使用独立目录**(`/mnt/ssd/nas-cache/timemachine/`),不通过 rclone VFS 管理,避免 sparsebundle 的大量小文件干扰 rclone 缓存逻辑
|
- **Time Machine 使用独立目录**(`/mnt/ssd/warpgate/timemachine/`),不通过 rclone VFS 管理,避免 sparsebundle 的大量小文件干扰 rclone 缓存逻辑
|
||||||
- Time Machine 备份写入 SSD 的 `timemachine/` 目录
|
- Time Machine 备份写入 SSD 的 `timemachine/` 目录
|
||||||
- **独立的 TM 回写引擎**异步归档到 NAS 的 `TIMEMACHINE_PATH` 目录(与通用 Write-back Controller 分离,详见下文)
|
- **独立的 TM 回写引擎**异步归档到 NAS 的 `TIMEMACHINE_PATH` 目录(与通用 Write-back Controller 分离,详见下文)
|
||||||
- `TIMEMACHINE_MAX_SIZE` 作为硬配额强制执行(通过 smb.conf 的 `fruit:time machine max size` 参数),防止占满缓存盘
|
- `TIMEMACHINE_MAX_SIZE` 作为硬配额强制执行(通过 smb.conf 的 `fruit:time machine max size` 参数),防止占满缓存盘
|
||||||
@ -207,16 +207,16 @@ TM 回写策略:
|
|||||||
- 预热进度显示
|
- 预热进度显示
|
||||||
|
|
||||||
#### 4.12 管理工具(CLI)
|
#### 4.12 管理工具(CLI)
|
||||||
- `nas-cache status` — 查看服务状态、缓存命中率、回写队列、冲突文件数
|
- `warpgate status` — 查看服务状态、缓存命中率、回写队列、冲突文件数
|
||||||
- `nas-cache cache-list` — 列出缓存中的文件
|
- `warpgate cache-list` — 列出缓存中的文件
|
||||||
- `nas-cache cache-clean` — 清理缓存
|
- `warpgate cache-clean` — 清理缓存
|
||||||
- `nas-cache warmup` — 手动预热
|
- `warpgate warmup` — 手动预热
|
||||||
- `nas-cache bwlimit` — 动态调整带宽限制
|
- `warpgate bwlimit` — 动态调整带宽限制
|
||||||
- `nas-cache conflicts` — 查看和处理冲突文件
|
- `warpgate conflicts` — 查看和处理冲突文件
|
||||||
- `nas-cache ingest` — 手动触发 SD 卡导入
|
- `warpgate ingest` — 手动触发 SD 卡导入
|
||||||
- `nas-cache verify` — 双卡校验
|
- `warpgate verify` — 双卡校验
|
||||||
- `nas-cache log` — 查看实时日志
|
- `warpgate log` — 查看实时日志
|
||||||
- `nas-cache speed-test` — 链路速度测试
|
- `warpgate speed-test` — 链路速度测试
|
||||||
|
|
||||||
#### 4.13 带宽管理
|
#### 4.13 带宽管理
|
||||||
- 支持上传/下载分别限速
|
- 支持上传/下载分别限速
|
||||||
@ -272,7 +272,7 @@ TM 回写策略:
|
|||||||
- 基于访问频率自动调整缓存优先级(热数据不被淘汰)
|
- 基于访问频率自动调整缓存优先级(热数据不被淘汰)
|
||||||
|
|
||||||
#### 4.21 Docker 镜像
|
#### 4.21 Docker 镜像
|
||||||
- 一行命令启动:`docker run -v /mnt/ssd:/cache nas-cache-proxy`
|
- 一行命令启动:`docker run -v /mnt/ssd:/cache warpgate`
|
||||||
- docker-compose 配置
|
- docker-compose 配置
|
||||||
- 支持环境变量或挂载配置文件
|
- 支持环境变量或挂载配置文件
|
||||||
|
|
||||||
@ -599,7 +599,7 @@ Day 3+: 后台轮询检测到远程目录变化
|
|||||||
#### 5.7.2 缓存目录结构
|
#### 5.7.2 缓存目录结构
|
||||||
|
|
||||||
```
|
```
|
||||||
/mnt/ssd/nas-cache/
|
/mnt/ssd/warpgate/
|
||||||
├── vfs/ # rclone VFS 缓存目录(rclone 内部管理,外部进程不直接写入)
|
├── vfs/ # rclone VFS 缓存目录(rclone 内部管理,外部进程不直接写入)
|
||||||
│ └── photos/
|
│ └── photos/
|
||||||
│ ├── 2026/
|
│ ├── 2026/
|
||||||
@ -1242,7 +1242,7 @@ for dir in watched_directories:
|
|||||||
| 参数 | 说明 | 默认值 | 建议值 |
|
| 参数 | 说明 | 默认值 | 建议值 |
|
||||||
|------|------|--------|--------|
|
|------|------|--------|--------|
|
||||||
| `AP_ENABLED` | 启用 WiFi 热点 | `no` | 现场共享时开启 |
|
| `AP_ENABLED` | 启用 WiFi 热点 | `no` | 现场共享时开启 |
|
||||||
| `AP_SSID` | 热点名称 | `NAS-Cache` | - |
|
| `AP_SSID` | 热点名称 | `Warpgate` | - |
|
||||||
| `AP_PASSWORD` | 热点密码 | 随机生成 | 首次配置时设定 |
|
| `AP_PASSWORD` | 热点密码 | 随机生成 | 首次配置时设定 |
|
||||||
| `AP_ISOLATION` | AP 网络与 WAN 隔离 | `yes` | `yes` |
|
| `AP_ISOLATION` | AP 网络与 WAN 隔离 | `yes` | `yes` |
|
||||||
| `AP_MAX_CLIENTS` | 最大连接数 | `8` | - |
|
| `AP_MAX_CLIENTS` | 最大连接数 | `8` | - |
|
||||||
@ -1343,7 +1343,7 @@ for dir in watched_directories:
|
|||||||
```bash
|
```bash
|
||||||
# btrfs 格式化示例
|
# btrfs 格式化示例
|
||||||
mkfs.btrfs /dev/ssd_partition
|
mkfs.btrfs /dev/ssd_partition
|
||||||
mount -o compress=zstd /dev/ssd_partition /mnt/ssd/nas-cache
|
mount -o compress=zstd /dev/ssd_partition /mnt/ssd/warpgate
|
||||||
```
|
```
|
||||||
|
|
||||||
### 软件要求
|
### 软件要求
|
||||||
@ -1518,7 +1518,7 @@ mount -o compress=zstd /dev/ssd_partition /mnt/ssd/nas-cache
|
|||||||
|
|
||||||
| 术语 | 说明 |
|
| 术语 | 说明 |
|
||||||
|------|------|
|
|------|------|
|
||||||
| **Cache Proxy / 盒子** | 本产品——部署在用户身边的 SSD 缓存代理设备 |
|
| **Warpgate / 盒子** | 本产品——部署在用户身边的 SSD 缓存代理设备 |
|
||||||
| **NAS** | 用户家中的网络存储设备(Network Attached Storage) |
|
| **NAS** | 用户家中的网络存储设备(Network Attached Storage) |
|
||||||
| **VFS** | rclone 的虚拟文件系统层(Virtual File System),将远程存储挂载为本地目录 |
|
| **VFS** | rclone 的虚拟文件系统层(Virtual File System),将远程存储挂载为本地目录 |
|
||||||
| **FUSE** | 用户空间文件系统(Filesystem in Userspace),Linux 内核机制,允许 rclone 在不修改内核的情况下提供文件系统挂载 |
|
| **FUSE** | 用户空间文件系统(Filesystem in Userspace),Linux 内核机制,允许 rclone 在不修改内核的情况下提供文件系统挂载 |
|
||||||
Loading…
x
Reference in New Issue
Block a user