Unity安卓二级缓存与CacheServer使用

1.作用概述

编辑器模式下,导入资源,切换平台unity都会重新识别资源,大型项目很浪费时间,使用Cache Server 缓存导入的资源,大大减少导入资源用时。(主要和Library文件夹有关)

因此使用Cache Server 主要目的是节约团队开发时的资源导入,平台切换的用时。

2.用法(使用,看这个就够了)

服务端下载

2018以后Cache Server升级了,换名:Unity Accelerator

unity android 二级缓存 unity cacheserver_unity android 二级缓存


2018以及以前为:Cache Server

unity android 二级缓存 unity cacheserver_服务端_02

部署Unity Acceleratorc

使用引擎的2019.3或更高版本。
安装完成后 会弹出网页管理的IP地址和端口号(安装过程中 需要 设置用户和密码,这是服务端管理用户)
Unity Accelerator is Running
Instructions to configure the Unity Editor to use Unity Accelerator.

In the Unity Editor preferences, use the following host and port number to configure the Cache Server Asset Import Pipeline (v2):

Host: 10.2.5.113 Port: 80

拥有网页配置,配置简单方便,同时有CPU 磁盘使用情况

unity android 二级缓存 unity cacheserver_服务端_03

账号:unitycache
密码:123456
使用地址:10.2.5.113:10080

修改http管理端口

在网页 Configuration 填写Desired HTTP Port 然后会弹出 Restart 按钮,点击即可

unity android 二级缓存 unity cacheserver_unity android 二级缓存_04

修改Editor连接端口

找到加速器安装位置,然后修改unity-accelerator,重启服务/进程即可(网页重启或者本地重启)

unity android 二级缓存 unity cacheserver_服务端_05

windows本地重启

unity android 二级缓存 unity cacheserver_服务端_06

客户端使用(设置好一次提交设置,团队拉取即可全部生效)

1.打开偏好(Edit->Preferences->Cache Server),模式切换为Enable,默认IP地址输入 服务器部署地址 与端口
2.点击Check Connection 测试连接是否成功

unity android 二级缓存 unity cacheserver_Server_07

3.打开Editor(Edit->Project Settings->Editor)
Cache Server 三种模式

第一种:使用偏好设置,preferences 只有enable和disable(使用偏好后,新建的项目也会自动 开启CacheServer),如果preferences 没有开启enabled,则无法使用

unity android 二级缓存 unity cacheserver_Server_08

第二种:只有当前项目开启CacheServer,可以控制 只上传/下载Cache,(是否使用加速以 Editor此处设置为准)

unity android 二级缓存 unity cacheserver_unity android 二级缓存_09

Namepace prefix:可以确保与其他项目隔离,相同项目使用同名Namespace prefix
不同配置,同文件,会多份上传
同配置,同文件,即使移动文件位置,不会多份上传

TLS/SSL :特性标签

第三种:关闭CacheServer

没有特殊需求:默认第一种即可

3.测试

平台切换测试

unity android 二级缓存 unity cacheserver_unity android 二级缓存_10

第一次切换需要上传资源,第二次(第二个人)再切换相同平台,速度很快(3秒左右)。
关键:
1.平台切换要相同版本才可以共享CacheServer
2.全局模式与enabled 都可以
3.同版本,不同项目不共享Cache(即使同资源)

资源导入测试(打开编辑器的情况下)

unity版本:2020.3.10f1

Cache Server:使用v2

资源大小:2.05G

不使用Cache Server
unity android 二级缓存 unity cacheserver_缓存_11

工程放到机械硬盘中,平均时间大概6分30秒
使用Cahce Server

前三次:

unity android 二级缓存 unity cacheserver_缓存_12

后三次:

unity android 二级缓存 unity cacheserver_unity android 二级缓存_13

总结:在资源导入方面,第一个导入的可能花时间更长(要将缓存上传服务器),但是后续导入资源,速度会加快(从缓存服务器下载资源),且多次导入越来越快直到达到一个峰值。

项目启动测试(不打开编辑器的情况下)

流程:编辑器关闭 Cache Server, 关闭编辑器,拉资源,再次启动项目,计时

不开启Cache Server (删除Library)

unity android 二级缓存 unity cacheserver_Server_14

开启Cache Server

unity android 二级缓存 unity cacheserver_Server_15

总结:Cache Server 对多人项目资源导入,新项目启动 都有提升速度的作用。作用大小取决于服务器与本地网速,以及本地硬件等多方面。

4.不同版本表现

2021版,2020版 下角增加Cache标志,使用方便,
(2020之后只剩下V2 新版的Unity Accelerator)

unity android 二级缓存 unity cacheserver_unity android 二级缓存_16

2019版没有小图标,

Preferences 里面拥有两个缓存选择 (V1 老版本 CacheServer V2新版本 Unity Accelerator)

unity android 二级缓存 unity cacheserver_服务端_17

新版本默认 V2
建议使用V2
V1 需要使用 Cache Server(2018版本及以下可以下载,官方已停更,不建议使用)

5.服务端监控

输入服务端部署地址,即可进入缓存监控界面

unity android 二级缓存 unity cacheserver_Server_18

1.当前服务端 的简易指标,

详细指标需要 prometheus 检测

unity android 二级缓存 unity cacheserver_服务端_19

2.当前加速器服务的配置(配置可使用缓存大小等,简易配置)

需要输入安装时配置的 账户和密码

如果忘记,重置密码:重新启动安装程序即可重置密码。

unity android 二级缓存 unity cacheserver_服务端_20

3.服务日志(有限的简易日志)

详细日志需要在安装位置查看 log 如图:

unity android 二级缓存 unity cacheserver_缓存_21

.cfg 后缀是服务端详细配置
.json后缀是用户名与密码存放(内容加密不可修改)

6.服务端缓存

两种方式规定缓存大小,

基于百分比Basic Custom第一行

基于大小,Custom 第二行(如图绿色,规定不可以使用1G(意思即除了1G 硬盘剩下的全部可以使用))

蓝色表示可用多少,绿色表示规定多少不可用

unity android 二级缓存 unity cacheserver_unity android 二级缓存_22

7.冲突

冲突情况一般不会发生,因为在SVN 和Git 中的如果冲突才会有可能出现缓存冲突,而当SVN 和Git冲突解决(使用”自己“或”他人“)后缓存文件也就使用当前解决冲突的版本
(关键:先Git或SVN 解决冲突后,才会打开项目,只有当项目启动才会触发 加速缓存)

8.预警

加速器本身并没有提供预警,可以考虑 接入 prometheus

unity android 二级缓存 unity cacheserver_服务端_23

如果不考虑接入,可以自己做预警(写一个程序,监控缓存文件夹大小),或者手动预警(隔一段时间看一下即可)

9.不同项目/不同配置-同种资源

根据官方文档,加速器可以不加速的资源有这样几类

1.脚本文件会被忽略

2.3D建模软件生成的本机文件或中间FBX,3D建模软件导出的FBX会被缓存

unity android 二级缓存 unity cacheserver_缓存_24

同种资源在不同项目会被多次缓存(同种资源不同路径也会被多次缓存),只要是被unity所识别的文件(相同文件在不同地方,也会有两份的缓存),基本可缓存,可加速。

相同项目,相同文件,相同位置,如果配置不同,会有多份缓存,且不会加速下载(因为第一次要上传缓存,即使服务端有相同的文件缓存)。

总结:
建议同项目使用同配置文件,可以减小缓存大小
所有项目使用统一配置,也许可以进一步减少缓存大小,但是可能造成未知错误。

10.缓存清除

缓存文件无法识别,所以手动选择性清理难以做到,根据官网所说,加速器会自动清理缓存,但是并没有给出详细的清除机制的说明。

unity android 二级缓存 unity cacheserver_Server_25

官网说有定期清理功能

unity android 二级缓存 unity cacheserver_Server_26

   

   

免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删

QR Code
微信扫一扫,欢迎咨询~

联系我们
武汉格发信息技术有限公司
湖北省武汉市经开区科技园西路6号103孵化器
电话:155-2731-8020 座机:027-59821821
邮件:tanzw@gofarlic.com
Copyright © 2023 Gofarsoft Co.,Ltd. 保留所有权利
遇到许可问题?该如何解决!?
评估许可证实际采购量? 
不清楚软件许可证使用数据? 
收到软件厂商律师函!?  
想要少购买点许可证,节省费用? 
收到软件厂商侵权通告!?  
有正版license,但许可证不够用,需要新购? 
联系方式 155-2731-8020
预留信息,一起解决您的问题
* 姓名:
* 手机:

* 公司名称:

姓名不为空

手机不正确

公司不为空