1、第 1 页(共 28 页)本科毕业论文(20 届)网络存储系统的设计与实现系统后台(SSH)的设计与实现所在学院专业班级 信息与计算科学学生姓名指导教师完成日期第 2 页(共 28 页)网络存储系统的设计与实现系统后台(SSH )的设计与实现摘 要:21 世纪是资源共享的网络时代,各类信息资源的积累加剧了其膨胀性,人们对数据的认知也发生了变化,网络技术已经成为主要的信息处理技术。网络存储系统则提供了一个远程访问和共享数据的平台,提高了数据存储的方便性、安全性,方便了数据的传输、管理、维护、节约了数据存储的成本。本文介绍了一个网络存储系统后台(SSH)设计与建立的过程,完整地分析了整个系统的功能
2、需求,并对后台每个子系统进行了详细的设计。关键词:网络存储;上传;下载Abstract:The twenty-first century is a network age with resources sharing. With the accumulation of all sorts of information, its getting increasingly expanded, and peoples cognition of data has also changed. Now network technique has become a major information pro
3、cessing technique. While, the network storage system helps to establish a platform for remote access and data-sharing, which increases its convenience and security, facilitates datas transmission, management and maintenance, and also saves the cost of data storage. This paper introduces the process
4、of designing and establishing the SSH backstage of network storage system and comprehensively analyzes the whole systems functional requirement. And each sub-system backstage is particularly included, too.Keywords:network storage;upload ;download第 3 页(共 28 页)1 引言 随着计算机及网络技术的不断发展,现代通讯工具应用的普及,计算机在现代社会
5、生活中发挥着重要作用,而与之相伴随的就是大量的文件而且是一些经常使用的文件携带不便的问题。虽然各大计算机硬件生产商都推出新的产品来帮助人们解决携带文件的困扰,但是携带一些存储设备有它自身的缺点和意想不到的麻烦。为方便人们对文件的携带,加快办公手段的现代化,根据人们的实际需求,我们提出了基于计算机网络存储系统的设计方案,并根据该设计方案部分地实现了存储系统的基本功能。2 系统需求分析2.1 导言2.1.1 目的该文档是关于用户对于网络存储系统的功能和性能的要求,重点描述了网络存储系统的设计需求,将作为对该工具在概要设计阶段的设计输入。本文档的预期读者是: 设计人员 开发人员 项目管理人员 测试人
6、员 用户第 4 页(共 28 页)2.1.2 范围该文档借助于现有的网络存储逻辑模型导出目标系统的逻辑模型,解决整个项目系统的“做什么”的问题。在这里,对于开发技术并没有涉及,而主要是通过建立模型的方式来描述用户的需求,为客户、用户、开发方等不同参与方提供一个交流的渠道。2.1.3 缩写说明JSPJava Server Page(Java 服务器页面)的缩写,一个脚本化的语言。UMLJava Server Page(Java 服务器页面)的缩写,一个脚本化的语言。2.2 系统定义2.2.1 项目来源及背景曾几何时,u 盘和移动硬盘取代了磁盘成为了人们最方便的数据携带工具,人们可以很方便的把数据
7、通过 u 盘传输。但目前,u 盘,移动硬盘已经适应不了互联网时代了。现在 u 盘和移动硬盘的局限性如下:安全性不能保证U 盘和移动硬盘一旦损坏或者丢失,上面的数据难以再找回,可能造成难以估计的损失,并且病毒也极易通过 U 盘传播,容量大小限制随着互联网时代数据量的爆发式增长,即使是移动硬盘的 TB 级储存空间也会出现难以储存所需要传输资料。而 U 盘和移动硬盘的空间都是固定的,不能够灵活的扩大。如果传输很大的数据,不得不分开用多个便携设备存储,数据共享不方便第 5 页(共 28 页)U 盘和移动硬盘的传输是点对点的,而且需要把设备插到电脑上才能传输,不能很方便的将一份资料多个用户共享。所以我们
8、才会选择将目光放到网上,从而推出了网络硬盘(网盘) 。所以用户完全可以将我们的网络储存系统看成是传统的 U 盘或者移动硬盘的升级版。用网盘的分布式储存系统,一份资料有多份冗余,即使部分机器损坏也能完整恢复数据,更不会存在丢失的风险,而且网盘严格的储存机制可放置病毒的传播。另外网盘没有容量大小限制,用户会有配额,但可无限扩容。由于数据是在网上,对多个人共享也十分方便,不受地理位置限制。2.2.2 项目要达到的目标本项目设定的目标如下:1.系统能够提供友好的用户界面,使操作人员的工作量最大限度的减少2.系统具有良好的运行效率,有良好的可扩充性,可以容易的加入其它系统的应用。3.平台的设计具有一定的
9、超前性,灵活性,能够适应企业生产配置的变化。4.数据中心要建设一个设备集中、集中管理、满足应用、方便扩展、安全稳定、共享同一的存储系统。5.通过这个项目可以锻炼队伍,提高团队的开发能力和项目管理能力6.用户注册后能够在上面保存删除自己的文件。2.2.3 系统整体结构根据用户的需求陈述,可以确定本项目分为客户端和管理端,客户端主要功能是注册账号、登陆账号、搜索资料、下载、快速上传等。管理端的功能是管理客户账号、分配存储空间、更新存储等。第 6 页(共 28 页)2.3 应用环境本项目的应用环境可以分网络环境、硬件环境和软件环境来描述。2.3.1 系统运行网络环境本系统的网络运行图如图 2-1,无
10、论是客户端的网络存储使用者还是管理端的管理者等都可以通过网络登录到本系统中。网络存储将想要进行存储的东西存放在系统中,管理员可进行管理。图 2-1 网络环境图2.3.2 系统运行硬件环境本系统的硬件环境如下: 客户机:普通 PC CPU:P4 1.8GHz 内存:256MB 以上 分辨率:推荐使用 1024*768 像素 WEB 服务器 CPU:P4 1.8GHzhadoop从机hadoop从机hadoop从机hadoop从机第 7 页(共 28 页) 内存:2048MB 以上 hadoop 从服务器 CPU:P4 1.8GHz 内存:1024MB 以上2.3.3 系统运行软件环境 操作系统:
11、Linux 数据库:Oracle 或者 mysql 开发工具包:Myeclipse JSP 服务器: Tomcat 浏览器:IE 8.02.4 功能规格我们采用面向对象分析作为主要的系统建模方法,使用 UML(Unified Modeling Language)作为建模语言。UML 为建模活动提供了从不同角度观察和展示系统的各种特征的方法。在 UML 中,从任何一个角度对系统所作的抽象都可能需要几种模型来描述,而这些来自不同角度的模型图最终组成了系统的映像。Use Case 描述的是“actor”(用户、外部系统以及系统处理)是如何与系统交互来完成工作的。Use Case 模型提供了一个非常重
12、要的方式来界定系统边界以及定义系统功能,同时,该模型将来可以派生出动态对象模型。设计 Use-case 时,我们遵循下列步骤:第一步,识别出系统的“actor” 。Actor 可以是用户、外部系统,甚至是外部处理,通过某种途径与系统交互。重要的是着重从系统外部执行者的角度来描述系统需要提供哪些功能,并指明这些功能的执行者(Actor)是谁。尽可能地确保所有 Actor 都被完全识别出来。第二步,描述主要的 Use Case。可以采取不断地问自己 “这个 Actor 究第 8 页(共 28 页)竟想通过系统做什么?”来准确地描述 Use Case。第三步,重新审视每个 Use Case,为它们下
13、个详尽的定义。2.4.1 角色(Actor)定义角色或者执行者(Actor)指与系统产生交互的外部用户或者外部系统。 使用者使用者是指在这个网络存储系统中通过客户端存储资料的人员,这个 Actor主要参与客户端的注册登陆账号、搜索资料、下载、快速上传等功能。 管理者管理用户是指管理端的用户,即系统管理员。系统管理员是指对网络存储系统进行相关设置、维护的人员,它也是通过管理端登录对管理端的用户进行设置,分配权限等,它们的关系如图 22:图 2-2 管理者图角色具体说明如下: 使用者第 9 页(共 28 页)对系统进行使用,存储需要存储的内容。 系统管理员对系统进行管理,包括使用者的存储内容及密码
14、信息。 数据库数据库是一个与系统产生交互的外部系统,这个 Actor 负责系统的数据查询、增加、删除和修改等操作。2.4.2 系统主 usecase 图网络存储系统可以分为两个主要的组成部分,一个是客户端子系统,一个是管理端子系统。客户端子系统主要是指使用者通过登录网络存储系统进行操作其功能,如存储资料,上传下载等。管理端子系统是网络存储系统的管理人员分配存储空间、管理账户、更新资料等功能。系统的主 Use Case 图如图 2-3 所示:图 2-3 系统的主 Use Case2.4.3 客户端子系统使用者通过登录网络存储系统的账号到系统中进行操作需要的功能,使用者第 10 页(共 28 页)
15、通过它存储资料、上传下载这就是客户端子系统的功能。在客户端用户可以看到自己存储的资料、可以搜索需要下载的资料。当点击资料名称时进入职位详细信息页面,如果需要下载的话,可以直接进行下载。 下载文件如果使用者看到符合心意的资料文件,则可以进行下载。具体描述如下:用例描述:下载文件执行者:使用者前置条件:使用者已选择资料文件后置条件:可以上传文件基本路径: 选择符合心意的资料文件,点击下载。 选择存储路径,网络存储系统中或者电脑本地路径。 上传文件上传文件时使用者将一些资料文件上传到网络存储刺痛的存储空间中进行存储。具体功能描述如下:用例描述:上传文件执行者:使用者基本路径: 使用者登陆网络存储系统中。 点击上传功能,选择要上传的文件。 直至提示“上传成功” ,则是停止上传。2.4.4 管理端子系统管理端主要是指管理人员使用的功能部分,它的功能分为上传管理、下载管