统一的分布式数据库和文件系统,及利用mysqlfs解决aliyun上做站的存储成本难题

来源:互联网 发布:网络大电影审批 编辑:程序博客网 时间:2024/06/06 01:56
从本地打包技术到分布式存储中的做站媒体维护在大型本地程序的媒体发布中脱离不了文件系统/打包技术, --- 这在游戏技术中很常见(看看大型3D网游DATA中的那些动则几G的资料片/资产库文件就知道了)。比如,zip包也是一种简单的文件系统。不过更复杂一些的场景,比如发布大量小文件还需要维护更新和版本化的时候,往往用打包+hash技术(一个索引一个存储库)。事情到了WEB和做站,同样地,WEB的静态资源往往有时变得很巨大,我们来细细分析,在其底下首先是分布式存储和其各种方案,分布式文件系统。从服务器上的rawfilesystem,到简单的ftp到网盘的切片文件系统,到oss,到如aw3fs,okasoft,mysql查询的fuse文件我们现的web栈往往是一个page ui+一个数据库,对存储的处理是web栈中一个基础环节。现在的以上这些,都不能使web像本地一样存储维护网站系统。像打包文件的本地方式一样维护/备份网站系统。ocwp,cmserpone都是在一定程序上使媒体维护变得免维护化这样的例子。网络应用像web,仅限于发展了page ui,如果不善于fs pk,也是不健全的。毕竟不能什么都做成流。接下来介绍的mongo就是一种突破。它具有gridfs本身就是一个文件系统,整合了mysql和fs。你可以将它视为mysql+oss,或native storage backend for web apps(that shipped with ehanced lamp),是web栈中一个很合理的整合存在。ps:整合的东西往往有一个干净,简单的门面。可以改造成各层开发者适用的版本,稳藏代码后面的复杂。这其实是现代开发,在源码处理(语法上)和发布上(组件技术上)的通用技术了。软件抽象和设计模式中的门面,都是这样的例子。整合的东西还可以提高应用的简便性。--------------------mongodb与阿里云,省事/低成本做站阿里云是这样设计ECS的,在其产品计划中,它把ECS作为计算产品出售,并不是一个全能产品,因此云存储中,有oss,ecs文件系统,块这样的东西,包括rds,mongodo这样的存储产品。比如,阿里云希望用户搭配使用ecs+rds。甚至有负载ecs,提出游戏解决方案电商解决方案,搭配使用的方案。but,这太乱了。而且存储成本,不但包括存储本身还包括存储中的媒体产生的流量。我希望有一种方案。像ECS一样全包但是不要涉及太多产品和计费方案。只涉及到最多二产品,且避免ecs的短处(安全负载流量全让aliyun去做)。aliyun apspa for mongodb就是这样一种。在这种方案中,你仅需要租用mongodo即可,外带一个支持PHP的空间,在程序支持方面,如果你是个个博客,比如,mongopress,rds for mysql+oss也可以,但是这处方案至少涉及到三个产品。下面是我在msyscuione+ocwp使用的wam/wnm架构中测试的结果------------------------(当然它也很贵),合租mongodb

查看原文:http://www.shaolonglee.com/%e7%bb%9f%e4%b8%80%e7%9a%84%e5%88%86%e5%b8%83%e5%bc%8f%e6%95%b0%e6%8d%ae%e5%ba%93%e5%92%8c%e6%96%87%e4%bb%b6%e7%b3%bb%e7%bb%9f%ef%bc%8c%e5%8f%8a%e5%88%a9%e7%94%a8mysqlfs%e8%a7%a3%e5%86%b3aliyun/
0 0