AgileEAS.NET平台开发实例-智能升级及服务器部署

by hot 2011.4.7 19:25

 

开篇

        上篇我们讲述了如何完成分布式访问服务及普通访问模式的切换,下面我们就来分析下如何实现远程的应用服务器部署,客户端实现智能的更新,我们的具体的实现思

路,可以通过如下的图形来展示:

        image

         下面我们就来分析下具体的配置过程,后续我们会分析智能客户端的具体实现过程和思路,本篇就不讲述了,后续的讲述AgileEAS.NET的每个模块的实现原理的时候,

会跟大家详细的说明。

大纲

           1、配置应用部署服务器端。

           2、打包本地客户端程序

配置应用部署服务器

        一般来说,应用的智能客户端的实现,都是一个应用部署服务器,相关的发布人员,通过发布工具来将最新的程序集或者要更新的组件部署在服务器上,然后客户端登  

陆与服务器端通信的时候,客户端会自动检测是否需要更新服务,如果需要更新服务,则客户端执行程序集的更新操作,AgileEAS.NET平台的实现智能客户端的思路,与上述

的过程类似,不过有点细节的变化,例如客户端与服务端的程序集清单文件匹配,确定要更新的程序集,客户端会下载该程序集,然后在该程序集更新完毕后,启动界面,这

样就不需要,用户点击完更新后,在重启应用程序,但是可能的缺点是第一次更新的时候,会有大量的文件下载,会有点慢,但是后续的过程就是非常的快了,因为在客户端

打包的时候,程序集本身非常的小,所有的应用程序的dll文件,都是在服务器上,通过从服务器端下载程序集到本地,完成模块的访问与调用。

        imageimage

        后续的非第一次访问时:

        image

         上面就是具体的关于程序集更新的流程,不知道是否表述的明白和清晰,希望大家能够不明白的,不清楚或者不确定的内容,请大家留言回复。

         下面我们就来看看具体的关于部署服务器的具体配置。

         1、找到EAS.AppServer文件夹:

         image

         2、该文件夹下的相关目录结构:

         image

         3、点击“config”文件夹,我们来看下该文件夹下的几个文件的作用和相关内容:

          image

          4、下面我们来看看我们需要修改的配置文件信息内容,我们只需要修改“SmartClient.xml”文件即可:

           image

          5、我们使用上述文件配置的前提是,分布式服务已经安装,否则无法完成智能客户端的升级服务配置。这样我们就完成了服务端的配置文件的修改,下面我们来看看,

如何通过平台提供的发布工具来进行具体的程序集清单文件的配置及智能客户端的更新。

          6、找到服务器部署工具:

          image

           7、找到该文件夹下的如下应用程序:

           image

           8、运行后出现如下界面:

           image

           既然上面已经分析了这些不同的配置项的具体作用,下面我们就来看看我们的应用程序部署的具体步骤:

           9、先浏览“初始化配置文件”

           image

           我们点击“浏览”选择config文件夹下的”WebConfig.config“文件,点击“加载”后:

           image

           10、配置程序集信息:

           image

           11、点击“配置程序集”后出现如下的复杂页面,我们来解析下该模块的具体作用。

           image

          12、我们先选择“config”目录下的“SmartAssembly.config”文件,点击“加载”效果如下:

           image

           13、点击“扫描文件夹”加载Assembly文件夹下的所有程序集:

            image

            14、点击“保存”,即是将扫描过的程序集列表去同步写回到“SmartAssembly.config”文件中:

            image

客户端配置

           上面我们讲述了服务器段的相关配置后,下面我们就来看看客户端的配置及应用程序打包,并且我们在打包的时候,配置一些相关的应用程序配置后即可。

           1、先将如下程序集复制到新的文件夹“SmartClient”中,如下的几个程序集是打包智能客户端必备的程序集:

           image

            image该组件是资源管理平台必备的dll。

           2、修改配置文件“EAS.Explorer.WinClient.exe.config”:

           image修改其中的地址,修改为自己要配置的服务器

的地址即可。

          3、将我们拷贝的必备程序集制作成安装程序,这样可以方便的进行部署和应用。下面我们就来讲述如何将我们前面配置的文件及客户端程序打包。

          image

         4、添加相应的程序集或文件到打包文件中:

         image

         5、我们选择“添加程序集”:

         image

         6、点击“确定”后:

         image

         7、继续添加“文件”将配置文件添加进来:

         image

         8、添加必要的客户端运行的资源管理平台插件“EAS.Explorer.Res.dll”文件,该文件是资源管理平台的资源文件,例如登陆页面的样式图片等等。

         image

         9、这样核心的客户端安装部署文件内部的核心程序集就全部包含了,下面我们就可以开始打包了,我们配置下一些打包的细节信息,就可以点击生成,来生成安装程序

了。

         image

         10、点击“属性”后:我们在输出文件名修改完毕后,点击“确定”:

         image

         11、选中项目,点击鼠标右键,现在“生成”或“重新生成”:

         image

         12、执行该生成操作后:输出如下文件。

         image我们只使用MSI文件,双击运行即可,弹出安装提示框,一路默认,完成安装。

        13、找到安装目录下的相关启动程序:

        image

         14、双击运行EAS.Explorer.WinClient.exe应用程序,我们会观察到该文件夹下的程序集文件的变化:

        image

         输入密码“sa”或“1”后,点击“确定”:

         如果出现如下提示:

         image

         请在打包的时候,把该程序集也打包,这样就不用在客户端这里麻烦了,如果想解决这个问题,从下载的程序集包里面拷贝一个该dll程序集复制到该目录下即可:

      image

         重新运行WinClient.exe应用程序,进入如下主界面:

         image

         这样我们就完成了,智能客户端与部署服务器直接的应用程序的更新和交互了,具体的关于数据库的访问,则完全通过分布式的通信来完成。

         在上述的过程中,我们来看看,当我们访问资源管理平台时,都下载了哪些程序集文件,从部署服务器上:

         image

         这样通过按需下载的方式,来降低应用程序部署的难度,通过部署服务器一键发布,多客户端相应的方式,当然可能大家会担心并发等压力的问题,一般来说是客户端在

登陆时会匹配客户端与服务器之间的程序集的版本,如果不一致才下载,否则不下载呵呵。一般来说问题不大。

总结

         这样通过上面的简单配置,我们就完成了,基本的智能客户端的部署和应用,那么我们在为客户部署软件环境时,只要给客户使用如下安装程序即可:

         image

        直接安装该应用程序,即可完成具体的通信服务,管理员只要修改服务器段的配置即可,客户端则不需要任何配置,但是可能会有个缺点,如果服务器端一旦配置错误,

则所有的客户端都无法完成访问。

        具体的好坏,还得做取舍,不同的场景不同呵呵,由于本人的水平有限,或者对系统的理解上还有误差,或者说是自己对系统平台的掌握不足,错误之处,还请大家帮助

指出,或者你对目前的这套工具,有更好的想法和认识都请提出来,谢谢!

药店系统源码

download34

 

其他文章

这里附带更多的关于AgileEAS.NET开发平台的说明文章。

1、官方博客:AgileEAS.NET 敏捷软件开发平台

2、作者博客:魏琼东

3、AgileEAS.NET平台-文档发布-还等什么?

4、AgileEAS.NET平台工具之数据原型设计器的使用场景示例

5、更多。。。

更多交流

官方博客:http://www.smarteas.net/

官方网站:http://www.agilelab.cn/

如果您在使用AgileEAS.NET开发平台中有什么问题,请使用如下几种联系方式或者沟通方式。

1、邮箱方式:

魏琼东: mail.james@qq.com 手机:18629261335 博客:http://eastjade.cnblogs.com/

殷长波:549558408@qq.com 博客: http://www.cnblogs.com/onmyway/

何戈洲:hegezhou_hot@163.com 博客:http://www.cnblogs.com/hegezhou_hot/

2、QQ交流群:

AgileEAS.NET平台交流群:120661978(超级群)[新建] 
AgileEAS.NET平台交流群:125643764(高级群)[新建] 
AgileEAS.NET平台交流群:147168308(高级群)[新建]

 

最新评论

声明

本博所有网友评论不代表本博立场,版权归其作者所有。

© Copyright 2011