免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 3132 | 回复: 1

[mogileFS] 关于“FastDFS直接使用socket通信方式,相对于MogileFS的HTTP方式,效率更高” [复制链接]

论坛徽章:
0
发表于 2012-01-31 14:53 |显示全部楼层
happy大,您好!

           正在关注fastdfs,之前看到关于fastdfs的介绍中,有关fastdfs与MogileFS的对比中有这么一句:
"FastDFS直接使用socket通信方式,相对于MogileFS的HTTP方式,效率更高。并且FastDFS使用sendfile传输文件,采用了内存零拷贝,系统开销更小,文件传输效率更高。"
请问这句在实践中具体是如何体现的呢,因为看了好多帖子,还是讲用http方式传输的呀?

另外,还有一点,关于fastdfs的设计,详情参见http://bbs.chinaunix.net/thread-3618773-1-3.html,请问为什么要这样设计呢

求happy大解惑,非常感谢。

论坛徽章:
0
发表于 2012-01-31 15:18 |显示全部楼层

<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
"FastDFS直接使用socket通信方式,相对于MogileFS的HTTP方式,效率更高。并且FastDFS使用sendfile传输文件,采用了内存零拷贝,系统开销更小,文件传输效率更高。"

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
1. SOCKET与 HTTP 的关系
--一个是发动机(Socket),提供了网络通信的能力
--一个是轿车(Http),提供了具体的方式
1) http 协议手机都支持,socket 不一定。
2) http 只能是一问一答(即以request/response 的方式连网收发信息), 而socket 可以双向通讯( 定位到某一URL 后, 就可以双方收发信息, 无需request/response) 。
3) Socket 可能会被防火墙屏蔽, 但http 可以穿越防火墙。
HTTP 是基于Socket 通信的子协议, Socket 收发信息自由, 协议都可由使用者定义。 HTTP 在Socket 基础上做了协议规范, 通信只能按照特定的格式去做, 用户可在HTTP 上做自己的子协议, 如网页浏览,webservice ,soap等

至于为什么以sendfile方式传输文件效率高,可以参考下面的文章
http://calmness.iteye.com/blog/378463

<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
另外,还有一点,关于fastdfs的设计,详情参见http://bbs.chinaunix.net/thread-3618773-1-3.html,请问为什么要这样设计呢

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
这样设计是为了考虑冗余备份、负载均衡、线性扩容等机制,并注重高可用、高性能等指标。

可以参考http://www.programmer.com.cn/4380/
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP