CacheServer

一、 
当Unity工程中的一些资源文件被修改后,Unity探测到这些修改就会重新导入这些资源文件,并随后将产生的导入数据以自己的内部格式存放起来。而我们知道导入这些资源文件是很耗时间的,并且不同的平台导入数据也是不同的。 
由此CacheServer就是要将这些产生的导入数据存储起来,当需要的时候直接从CacheServer取出来,而无需Unity本地再次生成导入数据。例如自己导入资源文件时会产生导入数据,自动上传到CacheServer,项目团队中其他成员导入资源文件后Unity不会产生导入数据,而会从CacheServer直接下载这些已经生成好的导入数据,从而大大缩短了大型团队导入资源的时间。使用Cache Server,不同平台之间的切换需要的时间显著减少,从而提高了制作速度。

二、部署CacheServer 
自己用可以部署到自己的主机上,团队用可以考虑找一台主机去部署。CacheServer默认存储最大50GB,主机最好硬盘快,硬盘容量够大,带宽大,最好使用Linux或Mac OSX,the Windows file system is not particularly well optimized for how the Asset Cache Server stores data and problems with file locking on Windows can cause issues that don’t occur on Linux or Mac OSX.

1)到Unity官网下载CacheServer http://unity3d.com/cn/unity/team-license

2)解压缩后 
这里写图片描述 
有对应于Linux/Mac OSX/Windows 平台的三个命令脚本,选择自己的平台的命令脚本,我的是Windows,双击之 
这里写图片描述 
此时CacheServer便运行起来了,可以使用了。(通过下面三、中可以测试是否自己的Unity连接CacheServer成功。)但是不能关掉这个界面否则会同时关闭CacheServer。

3)我们希望CacheServer开机自动启动同时后台运行。由此需要将RunWin.cmd变成Windows服务开机自动运行。 
参考文章http://blog.youkuaiyun.com/wuming22222/article/details/51714111

三、客户端设置如下(Edit->Preferences) 
1)勾选Use CacheServer 
2)填写部署有CacheServer的主机的IP, 一般是同一地点的成员一起使用同一个CacheServer,不会通过互联网远程使用CacheServer 
3)点击 Check Connection可以测试是否连接CacheServer成功。 
这里写图片描述

四、哪些改变会导致重新生成导入数据? 
1)资源文件本身的改变 
2)导入操作的设置的改变 
3)Asset importer version 的改变 
4)平台的改变 
对于一个texture: 
1)texture文件本身的改变 myTexture.psd 
2)meta文件myTexture.psd.meta (Stores all importer settings) 
3)The internal version number of the texture importer 
4)A hash of version numbers of all AssetPostprocessors

参考: 
1)http://docs.unity3d.com/Manual/CacheServer.html

### 宝兰德 CacheServer 的使用说明与配置教程 宝兰德 CacheServer 是一款高性能分布式缓存解决方案,能够显著提升应用程序的数据访问速度并降低数据库负载[^1]。以下是关于其使用说明、配置教程以及常见问题解决的相关内容: #### 配置教程 CacheServer 的配置通常涉及以下几个方面: 1. **环境准备** - 确保 Java 运行环境已正确安装,并满足版本要求。 - 下载并解压宝兰德 BES 应用服务器及其配套组件。 2. **启动服务** 启动 CacheServer 可通过命令行完成。以下是一个典型的启动脚本示例: ```bash ./startCacheserver.sh -port 8099 -cacheconfig cache-config.xml ``` 上述命令指定了端口号 `8099` 和缓存配置文件路径 `cache-config.xml`。 3. **缓存配置** 缓存的具体行为由 XML 文件定义。下面是一段简单的缓存配置示例: ```xml <?xml version="1.0" encoding="UTF-8"?> <cache-config> <region name="default"> <expiration-lifetime>3600</expiration-lifetime> <eviction-policy>LRU</eviction-policy> </region> </cache-config> ``` 此处设置了默认区域的过期时间为 3600 秒(即一小时),驱逐策略为 LRU(Least Recently Used)。 4. **客户端连接** 在应用程序中集成 CacheServer 客户端库后,可以通过如下方式建立连接: ```java import com.bes.cache.CacheFactory; public class CacheClient { public static void main(String[] args) { try { // 创建缓存实例 var cache = CacheFactory.getInstance().getCache("localhost", 8099); // 设置键值对 cache.put("key1", "value1"); // 获取值 String value = (String) cache.get("key1"); System.out.println(value); // 输出: value1 } catch (Exception e) { e.printStackTrace(); } } } ``` #### 常见问题及解决方法 1. **无法启动 CacheServer** 如果在尝试启动 CacheServer 时遇到错误,请检查日志文件中的具体异常信息。常见的原因可能包括端口被占用或配置文件语法不正确。 2. **性能下降** 当发现 CacheServer 性能明显下降时,可以考虑调整内存分配参数或优化驱逐策略。例如,在高并发场景下推荐使用 LFU 或 FIFO 替代 LRU。 3. **数据丢失** 数据丢失通常是由于未启用持久化功能所致。可以在配置文件中添加 `<persistence>` 节点来开启磁盘存储支持: ```xml <persistence enabled="true"/> ``` --- ###
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值