C/S模式智能客户端自动更新功能的设计与实现

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

图 1 智能客户端自动更新升级的实现过程
3 基本原理
(下转第 159 页)
本栏目责任编辑:谢媛媛
开发研究与设计技术
非等价的相似划分, 为协助企业成功实现客户信息化和科学化的 分类管理, 有效地对商务决策系统的决策规则进行了提取。在本文 的分类实验中, 仅选择客户信贷活动作为分类标准, 将该分类方法 推广到更多客户的评估指标分类中, 是今后进一步的研究工作。
1 引言
在大型程序开发过程中, 大部分是以模块化的开发方式为 主 , 一 般 来 说 , 一 个 大 型 的 MIS 系 统 通 常 有 十 几 个 甚 至 几 十 个 功 能模块, 一个模块对应一个功能。目前, 大多数的 MIS 系统都采用 的 是 C/S 模 式 的 两 层 应 用 结 构 , 在 这 种 结 构 下 , 应 用 软 件 分 服 务 器端程序和客户端程序。对于服务器端程序, 只需更新服务器端 程序即可; 而对于客户端程序, 不仅服务器端程序的修改, 而且客 户端程序的变化, 都要在每个客户端进行软件的改动和更新, 而 且在软件测试和发布初期, 这种改动是非常频繁的。如果依靠传 统 的 维 护 方 式— ——软 件 维 护 人 员 挨 个 去 给 每 个 客 户 端 程 序 做 升 级维护, 在少量客户端( 几个或者十几个) 情况下, 一两个软件维 护人员就可以对付, 如果客户端数量成百上千且比较分散, 这种 情况下的客户端程序维护, 就不是一两个维护人员所能解决的问 题。C/S 模式软件更新问题, 一直是软件开发和维护人员为之头痛 的事情。
参考文献: [1]王国胤. Rough 集理论与知识获取[M]. 西安:西安交通大学,
2002. [2]史忠植. 知识发现[M]. 北京:清华大学出版社, 2005. [3]吴 冰 等. 不 完 全 信 息 系 统 的 粗 集 web 挖 掘[J]. 同 济 大 学 学
报(自然科学版) , 2004. [4]邢 乃 宁. 孙 志 辉.一 种 基 于 粗 集 理 论 的 分 类 规 则 挖 掘 的 实
开发研究与设计技术
本栏目责任编辑:谢媛媛
C/ S 模式智能客户端自动更新功能的设计与实现
王广兴, 周伟 ( 九江学院 信息技术研究所, 江西 九江 332005)
摘要: 版本控制与版本的自动更新功能对于管理信息系统的开发和维护有着十分重要的作用和意义 , 本文介绍利用 PowerBuilder ( 以下简称 PB) 提供的 COM 组件技术实现 MIS 客户端的智能升级与自动更新, 详细介绍该功能的设计思想与具体实现, 为大型数据库 MIS 系统的开发、维护与升级, 提供了一个好的解决方案。
现方法.[J].计算机应用, 2001(12).
(上接第 156 页) 在智能客户端程序包中, 包含一个 Update.ini 的配置文件, 内
容包括客户端主程序路径 、主 程 序 文 件 名 、FTP 服 务 器 地 址 、远 程 文件夹名称、端口号、登录名、登录密码等配置信息。当用 户 启 动 智能客户端时, 智能客户端通过配置文件完成 FTP 服务器的通信 连接。连接成功后, 在智能客户端内部调用 PB 创建的 COM 组件 创建一个 外 部 数 据 集 id_sext, 包 含 filename、filetype、filesize、file- time、bz、flag 等 字 段 , 表 结 构 如 图 2; 获 取 FTP 服 务 器 主 程 序 所 在 的文件 夹 的 文 件 信 息 列 表 , 并 存 入 id_sext 中 ; 然 后 智 能 客 户 端 检 测 获 取 本 地 MIS 系 统 文 件 信 息 , 并 启 用 文 件 比 较 程 序 与 id_sext 中的 FTP 服务器临时文件信息列表进行比较, 根据文件名称、文 件类型和修改时间进行判断并下载、更新文件; 更新结束后 , 智 能 客户端自动关闭, 启动主程序。升级更新过程无需进行人工干预, 对于用户, 升级过程完全透明。当系统维护时, 维护人员只需把最 新的可执行文件上传到 FTP 服务器上即可。
图 2 外部数据集 id_sext 表结构
3 实现过程
3.1 创建 COM 组件声明用户对象 nvo_ftp invoftp 声明, 主要完成 FTP 服务器的连接、登录、文件 列 表 获 得 、文 件 信 息 比 较 、文 件 下 载 、FTP 服 务 器 连 接 、关 闭 等 工 作, 具体代码见源程序。 nvo_ftpnotify invoNotify 声 明 , 起 到 了 智 能 客 户 端 与 FTP 服 务 器 的 通 信 作 用 , 包 含 连 接 请 求 、文 件 信 息 返 回 信 息 、进 程 消 息 等 , 具体代码见源程序。 3.2 获取 FTP 服务器文件信息列表 在 这 部 分 程 序 中 , 使 用 PB 创 建 和 调 用 COM 组 件 nvo_ftp、 nvo_ftpnotify, 完 成 远 程 FTP 服 务 器 的 登 录 、获 取 远 程 文 件 信 息 存 入 idsext 中 , 并 在 PB 数 据 窗 口 dw_filelist 中 显 示 和 调 用 , 为 下 一 步文件比较做准备。 invoftp.of_setnotify(uo_ftpnotify.invoftpnotify) //调 用 COM 组 件实现 FTP 服务器通信 invoftp.of_connect(as_ftpdirectory) //FTP 登录通信连接 得到 FTP 服务器远程文件信息列表, 并存入外部数据集中。 ChangeDirectory(as_directory) For ll_row = 1 to ll_rowcount ls_server_filetype = dw_filelist.GetItemString(ll_row,"filetype")// 文件类型 ls_server_filename = dw_filelist.GetItemString(ll_row,"filename") //文 件 名 称 ls_server_filetime = Trim (dw_filelist.GetItemString (ll_row, ' filetime' ))//服务器文件时间 if ls_server_filetype = ' 文件夹' then //检测本地 MIS 系统文件 li_ser ++ ls_ftpdirectory[li_ser] = as_ftpdirectory + "/" + ls_server_file- name//FTP 文件路径 ls_directory[li_ser] = as_directory + "\" +ls_server_filename// 本地文件路径
近年来随着我校信息化进程的加快 , 各种 MIS 系统在教学和 日常工作中大量使用, 特别是我校的成绩管理系统和教务管理系 统的大面积使用, 依靠传统的手工维护方式, 不仅增加了维护难 度和维护工作量, 而且降低了系统运行效率, 滞后了我校信息化 的发展。所以, 解决 C/S 模式 MIS 系统客户 端 软 件 的 升 级 更 新 问 题迫在眉睫。
收稿日期: 2007- 06- 25
156 电脑知识与技术
2.2 设计思想 编制一个智能客户端的更新程序, 通过此智能客户端更新程 序达到 C/S 模式 MIS 系统软件版本更新的目的。调用更新程序的 方法有多种, 可以先启动更新程序, 再由更新程序启动主程序; 也 可以先启动主程序, 再由主程序启动更新程序, 或者由用户点击 更新菜单进行手动更新; 还可以由系统检测程序时间, 随时间更 新。我们采用第一种, 因为学校或企业通常都是内部局域网, 速度 很快。 通 常 情 况 下 , C/S 模 式 MIS 系 统 需 要 更 新 的 部 分 主 要 是 主 程 序和功能模块。在本智能客户端中, 更新程序首先访问 FTP 服务 器 , 获 取 FTP 服 务 器 上 主 程 序 及 功 能 模 块 的 修 改 时 间 等 信 息 列 表, 然后与本地主程序及功能模块的修改时间等信息进行比较, 判断哪些文件需要升级更新, 最后下载需要更新的文件, 下载完 毕后启动主程序。 本 程 序 中 使 用 了 PB 的 COM 组 件 技 术 , 调 用 Win32API 实 现 网络通信, 并采用单点登录和强制更新的方式, 实现获取远程 FTP 服务器文件信息, 并 将 结 果 返 回 到 外 部 数 据 源 文 件 信 息 列 表 中, 供外部程序调用, 与本地 MIS 文件信息进行比较判断, 以实现 智 能 升 级 。 智 能 客 户 端 与 FTP 服 务 器 的 通 信 均 通 过 PB 编 写 的 COM 组 件 实 现 , FTP 地 址 、登 录 名 、密 码 、端 口 号 等 接 口 信 息 均 封 装在 COM 组件中, 并通过配置文件自动获取。在获取远程 FTP 文 件 信 息 列 表 的 过 程 中 , 采 用 了 SSL 安 全 协 议 进 行 通 信 , 保 证 数 据 传输交换的安全性, 而且我们使用数据缓存技术临时存储文件信 息, 当文件比较、更新结束时自动销毁。在进行文件比 较 时 , 采 用 “先根遍历非递归算法”, 保证 FTP 主程序文件夹中所有的文件都 能被准确检测并进行比较, 避免了遗漏。FTP 服务器可用 Serv- U FTP Server 工具架设。采用 FTP 的好处是这种升级更新方式易于 在局域网上实现, 更新升级速度快, 而且也能够在互联网上实现。 设计思路如图 1。
2 设计
2.1 功能概述 本 智 能 客 户 端 通 过 用 户 配 置 文 件 自 动 获 取 FTP 服 务 器 上 的 MIS 系统文件信息列表, 包括文件名称、文件类型、文件大小、文件 修改时间等, 然后与本地客户端文件进行比较, 判断哪些文件需 要升级更新, 并自动下载需要升级更新的文件至客户端程序中, 使客户端程序文件最新, 以达到升级更新的目的。本智能客户端 功能特点主要是: 智能客户端自动更新采用 FTP 升级更新方式, 在 局 域 网 内 , 运 行 速 度 快 , 可 达 到 1040K/S; 与 MIS 系 统 主 程 序 采 用线程接口连接, 配置简单, 使用方便, 升级更新过程自动完成; 采用强制升级更新方式, 在主程序运行前就开始运行智能客户端 程序, 确保了客户端软件版本最新; 智能客户端升级完毕后, 将自 动关闭, 不占用机器 CPU 时 间 和 内 存 , 不 影 响 MIS 系 统 的 运 行 效 率; 界面友好, 免安装, 安全可靠, 方便实用; 最大的技术特点是采 用数据缓存技术, 不需要实际数据库支持, 这也是区别与同类自 动更新升级功能产品的优势所在。
关键词: C/ S 模式; 智能客户端; 管理信息系统; 自动更新; PowerBuilder 中图分类号: TP 311 文献标识码: A 文章编号: 1009- 3044(2007)13- 30156- 01
Des ign and Realization of C/S Mode S mart Client Auto- Update WANG Guang- xing, ZHOU Wei
(Information Technology R esearch Center,Jiujiang University,Jiujiang 332005,China) Abs tract: Version contr源自文库l and version auto - update act an important role in Management Information System development and mainte- nance。This paper introduces how to use PowerBuilder( PB) COM component techniques to realize MIS Client intelligent upgrade, auto- update and detailing the functions of the design and realization of thinking, and that provides a good solution for development, maintenance and upgrade of MIS based on large- scale database。 Key words : C/ S Mode; Smart Client; Management Information System; Auto- Update PowerBuilder
相关文档
最新文档