随着业务的倒退,服务器寄存的文件就越来越多,初期的时候,咱们会间接通过扩容来解决这个问题。然而硬盘不可能寄存将来所有增量的文件,并且硬盘不可能有限扩容,当硬盘调配完后,要么加硬盘,要么加服务器。
加硬盘可能是比拟快的形式,只有在程序中判断在某个工夫节点的文件,写入和读取都在指定的盘符就能够了,然而每个机器的接口无限,而且机架能够寄存硬盘的地位也无限,当接口或者地位都占用了,空间有余要怎么办?所以能够用很多很多个服务器来寄存并治理这些文件。
因为服务器呈现问题是不可避免的,比方咱们软件的 bug、操作系统的 bug、硬盘故障、忽然断电甚至自然灾害等,所以为了保证数据的安全性,就须要用冗余的方法来存储,也就是说一个文件寄存在多个服务器中,比方下图寄存 2 个服务器,这样当服务器 1 呈现问题的时候,咱们还能够从服务器 2 读取文件。冗余的正本越多,数据就越平安,当然存储的服务器老本也越高。
当寄存一段时间后,服务器的状况如下,文件的大小咱们是不能管制的,所以每次上传文件的时候,还须要晓得这个文件是否大于待上传服务器的可用空间。另外大小不一的文件也不好治理。
所以个别是把文件分成固定的大小块,比方 64M 或者 128M,而后再上传到服务器。比方下图,把文件分成 4 块,而后存储在 4 个服务器中,每个块的正本是 3 个。
如果说服务器 1 不可用了,文件 1、文件 2、文件 4 在其余服务器还是存在正本的,文件还是平安的。