Unity CacheServer搭建与使用

Unity CacheServer是Unity的缓存服务器,支持部署在多平台。有了缓存服务器,Hold on会快很多。

Cache Server 的部署参考 https://networm.me/2019/01/06/unity-cache-server-setup/

安装node.js

https://nodejs.org/en/download/

MAC下载: https://nodejs.org/dist/v12.16.3/node-v12.16.3.pkg

查看node.js环境

命令行查看版本,成功说明没问题

1
2
node -v
npm -v

从npm安装Cache Server

cd某个文件夹然后 -g全局安装

1
npm install unity-cache-server -g

运行

1
unity-cache-server [arguments] //不加参数会读默认配置 下面有修改默认配置的方法

可以用下面的命令测试是否安装成功

1
unity-cache-server -V

参数

Snipaste_2020-06-04_15-23-34.jpg

服务端默认配置修改

1
2
3
4
5
mkdir /opt/unity-cache-server
cd /opt/unity-cache-server
mkdir config
unity-cache-server --save-config config/default.yml
vi /opt/unity-cache-server/config/default.yml

下面的命令systemctl是CentOS的,Mac要用Homebrew的brew services

进程数

建议修改进程数为 1 个以上,能更有效地提升速度。

在 options: 下面增加 workers: 5,注意这是 Yaml 文件,使用空格进行缩进,workers 前面有 4 个空格。

缓存路径

Cache.options.cache_fs.cachePath 必须使用绝对路径,需要将值从 .cache_fs 改为 /opt/unity-cache-server/.cache_fs。

如果未使用绝对路径,启动服务时不会提示任何错误直接退出。

运行控制

开机自启动、运行与状态

1
2
3
systemctl enable unity-cache-server //mac用start会同时注册为开机自启动
systemctl start unity-cache-server
systemctl status unity-cache-server

检查运行日志

运行以下命令可以以 tail 方式持续实时地显示日志,使用 Ctrl+C 退出:

1
journalctl -u unity-cache-server -f

停止服务

1
systemctl stop unity-cache-server

防火墙

需要将默认端口 8126 放到允许列表中:

1
2
firewall-cmd --zone=public --add-port=8126/tcp --permanent
firewall-cmd --reload

客户端配置

菜单Edit-Preferences-Cache Server

选择Remote

ip填远程主机的ip,端口8126

清理

需要手动清理,执行以下脚本删除 180 天或超过 200GiB 的文件

1
unity-cache-server-cleanup --cache-path /opt/unity-cache-server/.cache_fs --log-level 5 --max-cache-size 214748364800 --expire-time-span 180.00:00:00

升级

1
2
3
4
systemctl stop unity-cache-server
npm update unity-cache-server -g
systemctl start unity-cache-server
systemctl status unity-cache-server