数据、文件和代码分离的架构
2018-11-21 本文已影响33人
程序员Hani
数据就保存在数据库中,数据库最好独立部署做远程连接,为了更加安全也可以考虑与代码部署的机器放在同一个内网,不对外连接,或者只有指定的ip才能访问。
文件也最好独立出来,利用 阿里云的oss或者七牛云的文件存储等等,也可以自己搭建一个分布式文件存储系统。以前做开发的图方便直接把文件保存在服务器本地,但是随着项目的运营,文件越来越多,占用大量的磁盘空间,由于磁盘空间不足导致代码报错无法运行,所以建议把文件独立存储。
代码部分,如果考虑devops 还是建议用docker,这样就不用为测试或者生产环境的问题而纠结。代码是核心,是所有的数据和文件的调度中心。
随着产品的迭代,代码量会变大,但是代码量所占用的磁盘空间的速度不会超过文件占用的磁盘空间速度,所以代码需要定期做备份,而文件部分可能只需要对重要的做备份。
数据、文件、代码三者分离的开发模式也比较方便后期架构的扩展和业务的调整。