高并发web服务技术选型

调研了一些技术选型。主要问题集中在单个GB级数据使用何种DFS的问题上,目前还没有得到可靠的结论。

 

负载均衡

采用:nginx或 lvs: https://github.com/alibaba/LVS

实施自己的调度策略:学习配置lvs或改造lvs或自己重写。

 

文件存储

调研下采用hdfs还是fastdfs还是其他的:Fastdfs,ZFS,Lustre,HadoopHDFS,GlusterFS。Lustre、MooseFS、CEPH。GridFS(mongodb自带的)

国内阿狸的tfs也是非常适合小文件海量存储。

 

GridFS:Managing files with Node.js and MongoDB GridFS http://www.tuicool.com/articles/myUBJze 并在express中融入。

http://blog.csdn.net/lee576/article/details/44195219

 

http://www.chinaaet.com/article/218182基于glusterfs的openstack平台。。

http://blog.sina.com.cn/s/blog_6b89db7a0101gbcy.html

理论和实践上分析,GlusterFS目前主要适用大文件存储场景,对于小文件尤其是海量小文件,存储效率和访问性能都表现不佳。海量小文件LOSF问题是工业界和学术界公认的难题,GlusterFS作为通用的分布式文件系统,并没有对小文件作额外的优化措施,性能不好也是可以理解的

 

 

http://www.moosefs.org/

fastdfs介绍: http://www.oschina.net/p/fastdfs

fastdfs:https://github.com/happyfish100/fastdfs

fastdfs原理介绍,含hash算法等:

  http://blog.csdn.net/wallwind/article/details/39891105

阿里的tfs适合海量小文件应用。

 

分布式存储调研:

http://www.cnblogs.com/yuki-lau/archive/2013/03/13/2957611.html

 

七牛云存储技术:http://www.infoq.com/cn/articles/storage-system-stuff

 

 

现有的分布式文件系统,哪种适合单文件GB级别的海量存储。 各种分布式文件系统的优缺点,适应场景,性能比较。

 

http的文件断点续传实现,大文件上传下载, 进度跟踪等技术, 消息回调提醒技术。

 

 

 结构数据存储:

MongoDb

 

 

文件上传

mongodb

 

通过nodejs将文件上传到mongodb

nodejs和mongodb的文件上传http://marshal.easymorse.com/index.html%3Fp=4944.html

 

html5实现大文件上传: http://www.html5rocks.com/zh/tutorials/file/dndfiles/

Silverlight解决方案: http://www.silverupload.cn/

Plupload解决方案: http://segmentfault.com/a/1190000000725971

http://www.plupload.com/

推荐百度的webupload http://fex.baidu.com/webuploader/

 

 

 

kv数据库:用来做系统的缓存层

谷歌的levelDb,豆瓣的beanDb,Redis

你可能感兴趣的:(并发,web,服务)