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

简介:

开篇

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

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

        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

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

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

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

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






本文转自何戈洲博客园博客,原文链接:http://www.cnblogs.com/hegezhou_hot/archive/2011/04/07/2007956.html,如需转载请自行联系原作者

目录
相关文章
|
13天前
|
人工智能 量子技术 C#
【专栏】.NET 开发:开启数字化新时代
【4月更文挑战第29天】.NET开发在数字化新时代中发挥关键作用,借助跨平台能力、高性能和现代编程语言支持,如C#,助力企业实现数字化转型。通过企业级应用开发、移动应用和云计算集成,.NET加速业务流程和提升用户体验。未来,.NET将涉足AI、ML、MR/AR及量子计算,持续推动技术创新和数字化转型。开发者应提升技能,适应高性能需求,把握发展机遇。
|
13天前
|
缓存 监控 算法
【专栏】.NET 开发:实现卓越性能的途径
【4月更文挑战第29天】本文探讨了.NET开发中的性能优化,强调了理解性能问题根源和使用分析工具的重要性。基础优化包括代码优化(如减少计算、避免内存泄漏)、资源管理及选择合适算法。高级策略涉及并行编程、缓存策略、预编译(AOT)和微服务架构。持续性能测试与监控是关键,包括性能测试、监控分析和建立优化反馈循环。开发者应持续学习和实践性能优化,以构建高性能应用。
|
13天前
|
开发框架 .NET C#
【专栏】理解.NET 技术,提升开发水平
【4月更文挑战第29天】本文介绍了.NET技术的核心概念和应用,包括其跨平台能力、性能优化、现代编程语言支持及Web开发等特性。文章强调了深入学习.NET技术、关注社区动态、实践经验及学习现代编程理念对提升开发水平的重要性。通过这些,开发者能更好地利用.NET构建高效、可维护的多平台应用。
|
13天前
|
机器学习/深度学习 vr&ar 开发者
【专栏】.NET 技术:引领开发新方向
【4月更文挑战第29天】本文探讨了.NET技术如何引领软件开发新方向,主要体现在三方面:1) 作为跨平台开发的先锋,.NET Core支持多操作系统和移动设备,借助.NET MAUI创建统一UI,适应物联网需求;2) 提升性能和开发者生产力,采用先进技术和优化策略,同时更新C#语言特性,提高代码效率和可维护性;3) 支持现代化应用架构,包括微服务、容器化,集成Kubernetes和ASP.NET Core,保障安全性。此外,.NET还不断探索AI、ML和AR/VR技术,为软件开发带来更多创新可能。
|
13天前
|
物联网 vr&ar 开发者
【专栏】.NET 技术:为开发注入活力
【4月更文挑战第29天】本文探讨了.NET技术的创新,主要体现在三个方面:1) .NET Core实现跨平台开发革命,支持多种操作系统和硬件,如.NET MAUI用于多平台UI;2) 性能提升与生产力飞跃,C#新特性简化编程,JIT和AOT优化提升性能,Roslyn提供代码分析工具;3) 引领现代化应用架构,支持微服务、容器化,内置安全机制。未来,.NET 7将带来更多新特性和前沿技术整合,如量子计算、AI,持续推动软件开发创新。开发者掌握.NET技术将赢得竞争优势。
|
13天前
|
人工智能 前端开发 Cloud Native
【专栏】洞察.NET 技术的开发趋势
【4月更文挑战第29天】本文探讨了.NET技术的三大发展趋势:1) 跨平台与云原生技术融合,通过.NET Core支持轻量级、高性能应用,适应云计算和微服务;2) 人工智能与机器学习的集成,如ML.NET框架,使开发者能用C#构建AI模型;3) 引入现代化前端开发技术,如Blazor,实现前后端一致性。随着.NET 8等新版本的发布,期待更多创新技术如量子计算、AR/VR的融合,.NET将持续推动软件开发的创新与进步。
|
13天前
|
开发框架 物联网 测试技术
【专栏】.NET 开发:打造领先应用的基石
【4月更文挑战第29天】本文探讨了.NET开发框架为何成为构建领先应用的首选。高性能与稳定性是.NET的核心优势,它采用先进的技术和优化策略,如.NET Core的轻量级设计和JIT/AOT编译模式。跨平台兼容性让开发者能用相同代码库在不同操作系统上构建应用。现代化的开发体验,如C#语言的创新特性和Visual Studio的强大工具,提升了开发者生产力。丰富的生态系统和广泛支持,包括庞大的开发者社区和微软的持续投入,为.NET提供了坚实后盾。
|
13天前
|
人工智能 前端开发 Devops
【专栏】洞察.NET 技术在现代开发中的作用
【4月更文挑战第29天】本文探讨了.NET技术在现代软件开发中的核心价值、应用及挑战。.NET提供语言统一性与多样性,强大的Visual Studio工具,丰富的类库,跨平台能力及活跃的开发者社区。实际应用包括企业级应用、Web、移动、云服务和游戏开发。未来面临性能优化、容器化、AI集成等挑战,需持续创新。开发者应深入理解.NET,把握技术趋势,参与社区,共创美好未来。
|
13天前
|
机器学习/深度学习 人工智能 开发者
【专栏】.NET 技术:为开发带来新机遇
【4月更文挑战第29天】本文探讨了.NET技术如何为软件开发带来新机遇,分为三个部分:首先,.NET的跨平台革命,包括.NET Core的兴起、Xamarin与.NET MAUI的移动应用开发、开源社区的推动及性能优化;其次,介绍了云服务与微服务架构的集成,如Azure云服务、微服务支持、DevOps与CI/CD,以及Docker容器化;最后,讨论了AI与机器学习集成,如ML.NET、认知服务、TensorFlow和ONNX,使开发者能构建智能应用。面对这些机遇,开发者应不断学习和适应新技术,以创造更多价值。
|
13天前
|
算法 Java 编译器
【专栏】.NET 开发:实现高效能的秘诀
【4月更文挑战第29天】本文探讨了提升.NET应用性能的三个方面:理解.NET运行时(垃圾回收、JIT编译器、异步编程和线程并发)、优化代码与算法(代码细节、数据结构选择和算法效率)以及利用工具和框架(性能分析工具、高性能库和CI/CD流程)。通过深入学习、合理设计和有效工具,开发者可实现.NET应用的高效能。