最近项目中用到IcePatch2,网上的资料比较少,根据自己的经验做一个整理。
官网下载
下载地址: Ice-3.7.10.msi
在windows(Linux类似)下安装Ice-3.7.10后,在其\bin\有三款ZeroIce涉及更新功能的三个小工具,是动态版本的,如果需要静态版本请自行编译。
(1)icepatch2calc.exe该工具负责压缩指定目录下文件,并为每个文件生成一个包含校验和的索引。
(2)icepatch2server.exe是一个服务端,负责包含要分发给IcePatch2客户端的文件和子目录的文件系统目录(数据目录)。
(3)icepatch2client.exe是一个客户端,负责在客户端指定目录下重新创建数据目录及其内容或修补自上次运行以来更改的任何文件。
压缩和生成校对信息
首先,创建一个服务端目录,存放要分发给IcePatch2客户端的文件和子目录的文件系统。如:D:\testServerFile,创建test.txt。
准备好测试文件就可以开始压缩了,打开cmd执行命令
icepatch2calc.exe D:\testServerFile
压缩完之后D:\testServerFile文件夹下面会多一个bz2文件和一个IcePatch2.sum
启动服务端
服务端需要配置其运行需要一些简要参数的配置。
在config文件夹下面创建iceSrv.patch文件,内容如下:
#实例名,客户端连接服务端需要用到
IcePatch2.InstanceName=MCSSVCGrid
#指定目录
IcePatch2.Directory=D:\testServerFile
#服务地址与端口
IcePatch2.Endpoints=tcp -h 127.0.0.1 -p 10086
执行启动命令
icepatch2server.exe --Ice.Config=D:\ZeroC\Ice-3.7.10\config\iceSrv.patch
配置文件的名字自定义,位置也可以随便放,推荐放在config目录下,方便统一管理
启动客户端
客户端需要配置其运行需要一些简要参数的配置。
在config文件夹下面创建iceClient.patch文件,内容如下:
#服务端链接信息(实例、地址、端口)
IcePatch2Client.Proxy=MCSSVCGrid/server:tcp -h 127.0.0.1 -p 10086
#配置加载或更新的指定目录
IcePatch2Client.Directory=D:\testClientFile
执行启动命令
icepatch2client.exe --Ice.Config=D:\ZeroC\Ice-3.7.10\config\iceClient.patch
运行命令你就发现D:\testClientFile多了test.txt和IcePatch2.sum