服务端功能细分
服务端到底要实现什么样的功能:
1、支持客户端文件上传功能
2、支持客户端文件备份列表查看功能
3、 支持客户端文件下载功能(断点续传)
4、热点文件管理功能(对长时间无访问的文件进行压缩存储,节省磁盘空间)
服务端模块划分
1、数据管理模块(管理的是备份的文件信息,以便于随时获取文件信息)
服务端备份了哪些文件,我们需要将这些信息保存起来,为什么要保存?因为服务端对于非热点文件进行压缩存储,如果我们对这个文件已经进行了压缩存储,客户端要查看文件列表,那么从哪里获取呢?所以我们要将客户端备份的这些文件信息全部管理起来(客户端上传了什么文件,是否已经压缩了,原来的文件名是什么,压缩包的文件名是什么这些管理起来),当客户端要获取文件列表的时候就能知道把数据交给客户端,作为网页的数据展示;我们把数据的管理单独拎出来是为了实现数据以业务分离这个功能,减少模块功能之间的耦合度;
2、网络通信模块(实现与客户端的网络通信功能)
客户端将文件备份到服务器上面,是两个不同主机之间的进程通信,我们就要通过网络通信来完成。
3、业务处理模块(文件上传请求以及列表查看请求、文件下载功能(包含断点续传))
4、热点管理模块(对长时间无访问的文件进行压缩存储)
客户端功能细分
1、指定文件夹中的文件检测(获取文件夹中有什么文件);
2、判断指定文件是否需要备份(新增加的文件/已经备份过但是又修改过的文件需要备份,同时这里又要对文件进行细分,比如有一个文件时时刻刻都在修改(比如一个程序在向文件中写数据),此时我们可以根据时间段来上传(上次上传后又修改过,但是已经间隔3秒钟都没有被修改然后再上传));不是所有的文件都是需要备份的,比如上次有一个文件已经备份过了,再又一次的扫描中又找到了他,但是自从上次上传之后就没有修改过,所以这次就不需要上传;
3、将需要备份的文件上传备份到服务器上。
标签:文件,功能,备份,细分,上传,服务端,客户端 From: https://blog.51cto.com/u_15562309/7487559