2.1 可行性分析与需求分析
2.1.1 系统架构
B/S架构的全称为Browser/Server,即浏览器/服务器结构。Browser指的是Web浏览器,极少数事务逻辑在前端实现,但主要事务逻辑在服务器端实现,Browser客户端,WebApp服务器端和DB端构成所谓的三层架构。B/S架构的系统无须特别安装,只要有操作系统和浏览器即可。B/S 建立在广域网之上, 对安全的控制能力相对弱, 面向是不可知的用户群.
C/S 架构是一种典型的两层架构,其全程是Client/Server,即客户端服务器端架构,其客户端包含一个或多个在用户的电脑上运行的程序,而服务器端有两种,一种是数据库服务器端,客户端通过数据库连接访问服务器端的数据;另一种是Socket服务器端,服务器端的程序通过Socket与客户端的程序通信。C/S 一般面向相对固定的用户群, 对信息安全的控制能力很强.
作为一款FTP服务器软件,本次设计将采用比较成熟的C/S结构,即客户机和服务器结构。目前大多数系统软件都是Client/Server形式的两层结构,通过它可以充分利用两端硬件环境的优势,将任务合理分配到Client端和Server端来实现,降低了系统的通讯开销。同时该服务器软件在C/S结构下多用户应用得到了更好的应用,如完善的用户共享特性,良好的用户管理,以及更好地平衡服务器与客户机之间的负荷,大幅度降低网络传输的负荷,等它还具有界面和操作丰富,安全性能容易保证,实现多层认证也不难,响应速度较快的特点。这种客户请求服务、服务器提供服务的处理方式同时也是一种成熟的计算机应用模式。所以本次设计采用C/S架构体系。
2.1.2 数据存储选用
当今主流的数据库包括ACCESS,SQL SERVER和ORACLE,前两者为微软的产品,后者是美国ORACLE公司(甲骨文)提供的以分布式数据库为核心的一组软件产品,这三种数据库都是关系数据库,即建立在关系数据库模型基础上的数据库,借助于集合代数等概念和方法来处理数据库中的数据。
ACCESS数据库属于桌面关系数据库管理系统,提供了一个数据管理工具包和应用程序的开发环境,主要适用于小型数据库系统的开发,如利用它作为后台数据库制作动态网页等。而SQL SERVER只能在windows上运行,没有丝毫的开放性,操作系统的系统的稳定对数据库是十分重要的,并行实施和共存模型并不成熟,很难处理日益增多的用户数和数据卷,伸缩性有限,而且多用户时性能不佳。ORACLE虽然适应平台较广,也比较稳定,但是多用于大型或巨型的服务器系统,且费用昂贵,对于中小型服务器的数据存储选择一般都不会考虑它。
相比较前三者数据库,XML数据存储具有以下几个特点:
(1)XML数据库能够对半结构化数据进行有效的存取和管理。如网页内容就是一种半结构化数据,而传统的关系数据库对于类似网页内容这类半结构化数据无法进行有效的管理。
(2)提供对标签和路径的操作。传统数据库语言允许对数据元素的值进行操作,不能对元素名称操作,半结构化数据库提供了对标签名称的操作,还包括了对路径的操作。
(3)当数据本身具有层次特征时,由于XML数据格式能够清晰表达数据的层次特征,因此XML数据库便于对层次化的数据进行操作。XML数据库适合管理复杂数据结构的数据集,如果己经以XML格式存储信息,则XML数据库利于文档存储和检索;可以用方便实用的方式检索文档,并能够提供高质量的全文搜索引擎。另外XML数据库能够存储和查询异种的文档结构,提供对异种信息存取的支持。
XML标记数据放入一定的结构中,对数据的检索、分析、更新和输出就能够在更加容易管理的、系统的和较为熟悉的环境下进行,因而将数据库技术应用于XML数据处理领域,通过XML数据模型与数据库模型的映射来存储、提取、综合和分析XML文档的内容。这为数据库研究开拓了一个新的方向,故此次系统的设计将选用XML进行数据存储。 C#的FTP服务器软件系统的设计与实现(3):http://www.youerw.com/jisuanji/lunwen_5865.html