我们都知道,在做管理信息系统应用产品的部署和升级是很让人头大的过程,上百个客户段节点的程序都得你去更新一遍,特别是在项目的上线调试阶段,频繁的更改引起的程序部署,可以把你累死,把项目方的系管也累的半死。
基于这样的需求,出现了各式各样的部署和升级方案,首次安装、以后自己升级的方案得到了广泛的应用,也就是应用的智能部署与升级。
AgileEAS.NET平台也提供了这样的一个部署与升级方案,被应用于ActiveXForm和SmartWin应用中,AgileEAS.NET提供基于WebService的插件运行时智能升级方案,这里有两个概念,第一个是基于WebService技术传输,第二个是插件运行时组件升级。
因为AgileEAS.NET平台是基于插件组装技术的,我们可以理解应用系统的升级也就是插件的升级,并且仅当在平台调用插件时才去进行判断和升级插件及其运行所必要的文件,也就是说升级不是一次性完成,还是在运行的环境完成智能升级。
ActiveXForm的部署与自动升级不需要客户段的设计,安装完ActiveXForm客户段核心引擎即OK了,SmartWin应用需要修改客户端的配置文件,指定升级服务的地址:
<applicationSettings> <EAS.Explorer.SmartClient.Properties.Settings> <setting name="SmartService" serializeAs="String"> <value>http://vm2003/EAS/SmartUpdate/SmartAssemblyService.asmx</value> </setting> </EAS.Explorer.SmartClient.Properties.Settings> </applicationSettings>
服务端提供了一个小配置工作用于配置需要升级的程序集列表及其最后更新信息:
工作扫描指定目录中的程序集并生成程序集清单信息:
<SmartAssembly Name="ActiveXForm.ClientAPI" Developer="agilelab.cn" Description="" Version="1.0.3820.33636" FileName="ActiveXForm.ClientAPI.dll" Time="2010-06-17T18:41:12.6193599+08:00"> <References> <AssemblyName Name="EAS.Distributed.Interface" /> <AssemblyName Name="ActiveXForm.ClientClasp" /> <AssemblyName Name="EAS.Explorer" /> <AssemblyName Name="EAS.Session" /> <AssemblyName Name="EAS.IOCContainer" /> <AssemblyName Name="EAS.Windows" /> </References> </SmartAssembly>
客户端通过自定义的类加载器在加载某个插件类型时自动检查程序集版本并判定是否下载程序集,程序集下载到本地后被加载和调用。
QQ群:120661978,125643764