自动更新程序的设计框架

Posted on 2009-08-11 12:07  星际探索  阅读(5357)  评论(23编辑  收藏  举报

概要说明:

自动更新程序主要负责从服务器中获取相应的更新文件,并且把这些文件下载到本地,替换现有的文件。达到修复Bug,更新功能的目的。

本文作为更新程序的一个框架性设计,主要侧重介绍功能和流程。也许在若干年后,我再回顾当初自己的设计,会有另外一份所获。

 

系统组成:

FTP服务器

主要存放要更新的所有文件。提供客户端下载

更新文件生成功能

根据FTP文件夹中的内容,生成更新列表(xml文件)

自动更新程序

判断版本号,下载最新的文件,替换现有程序。

 

服务端的流程图:

 

 

 

客户端的流程图:

 

 



更新列表文件介绍:

 

 

 

 

补充:

1:更新程序没有做成全自动。用户必须手工点击更新按钮,才启动更新程序。

因为目前的系统平时更新并不频繁。在系统刚上线的时候,可能更新会勤一些,但在系统运行稳定后,也许一年半载都不会去更新。

 

2:更新程序如果执行到一半,发生意外导致更新被迫终止,目前的解决方案是让用户再重新更新一次。没有断电续传。没有中间过程恢复。

如果更新程序使用并不频繁,就没必要加入过多的逻辑。偶尔出一些错误,只要不影响业务程序运行,绝大数用户还是可以忍受的。

 

 3:虽然此更新功能和windows的update,瑞星的update相比,简直就是一个小儿科程序,但是这个程序的却也满足了我参与的所有项目的要求。
不求最好,够用就行。呵呵

Copyright © 2024 星际探索
Powered by .NET 8.0 on Kubernetes