文档介绍:外网文件传输平台项目
文件管理服务器软件设计说明书(业务)
北京东方通科技发展有限责任公司
2007-4-24
变更历史
版本号
日期
作者
批准者
扼要说明
变更请求号
2007-04-24
葛东遥
第一、四、五章编写者
2007-04-24
张立为
第二、三章和目录服务编写者
2007-04-24
郭旸
第六章编写者
目录
第1章 整体系统设计 5
系统概述 5
网络包协议 5
应答包结构 6
上传流程 6
下载流程 7
进程状态迁移图 7
日志维护 8
性能解决方案 8
第2章 数据库表 9
库表 9
库表描述 9
第3章 控件 17
功能描述: 17
接口统计 17
过程设计 17
类设计 21
限速策略 22
本地日志 23
第4章 文件管理 24
协议格式 24
配置文件 24
应用目录的设计 24
服务端功能流程图 27
主控线程处理流程 29
工作线程处理流程 30
客户端功能流程图 36
上传文件流程图 36
下载文件流程图 40
第5章 文件转发服务器 42
配置文件 42
功能流程图 43
工作线程流程图 45
第6章 集中管理 47
功能描述 47
模块化分 48
配置文件 49
用户角色划分 49
界面设计 50
功能流程 55
集中管理终端启动 56
文件管理服务器参数配置 59
文件管理服务器应用配置 62
文件管理服务器传输日志查询 64
文件管理服务器监控 66
管理工具 68
整体系统设计
网络通讯采用同步socket的传输方式,用select实现异步处理。
系统概述
外网文件传输平台由客户端控件﹑文件转发服务﹑文件管理服务﹑集中管理四大部分组成。
客户端控件主要功能文件上传下载续传﹑速率的显示和控制﹑客户端日志的管理功能。
文件转发服务主要功能:对客户端和文件管理服务之间传送数据的转发及断点续传。
文件管理服务主要功能:接收客户端的上传下载续传请求处理,提供文件到达查询接口,提供对系统参数的动态更新。
网络包协议
命令包
描述
HTTP头
包长
网络命令
数据
内容
Int
NET_INFO
typedef struct _Info
{
mandType; /*1为指定IP转发,2为直接转发*/
char IP[15+1];
int port;
} NET_INFO;
数据包
描述
数据
内容
应答包结构
本系统对于操作成功与否的应答包,全部采用以下数据协议。
typedef struct mon
{
char nType;/*F 为文件管理服务器返回应答类型,T为转发服务器返回应答类型,J
为集中管理服务返回应答类型*/
int nResult;/*0,表示成功;>1表示失败*/
char errStr[1024];
}MON;
描述
调用类型
调用Id
数据
内容
对应类型
对应Id
MON
上传流程
下载流程
进程状态迁移图
日志维护
对于客户端的用户日志,由用户根据控件控制面板自行维护;
对于数据库表中的日志,可以通过文件管理服务器按清理策略自动清理日志,也可以通过集中管理来手动清除日志。
对于上传下载目录由工行系统维护员自行维护,根据目录服务的结构进行文件的备份和删除。
性能解决方案
均衡负载,由于采用硬件来实现均衡负载和要保证文件断点续传,在此种条件下如果一台上传断点续传的文件很多,会造成此文件管理服务器达到过载的情况,这样就不是真正的均衡负载,此种特殊情况当前方案无法解决。
提高性能:采用多线程处理,增加的对多CPU的利用,提高了系统的性能。采用同步传输,保证了数据包不会丢失。
安全厂商提供的验签方式,频繁的和验签服务器进行交互,也会影响整个系统的性能。
集中管理的操作尽量在文件管理系统不繁忙的时候,也就是没有文件传输时进行操作,这样也会提高这个系统的性能;动态监控尽量少开,不需要监控时不开,否则影响整个系统的性能。
日志为了实现统一管理和查询快捷灵活,设计采用数据库,由于所有的文件管理服务器都访问同一台服务器,为了提高性能建议数据库配置