C#和.NET中如何利用FastDFS打造分布式文件系统

背景

海量存储、系统负载的迁移、服务器吞吐的瓶颈等等 让文件系统独立于业务系统 提高整个项目的扩展性以及可维护性

目前主流的方案 MFS FASTDFS GFS LUSTRE HADOOP等等

我选择的是FASTDFS 用一句广告语来说 “免费、快速、找得到”。FASTDFS的作者是淘宝的资深架构师余庆,很诙谐、很有爱!!!其他方案还没玩过 暂不评论。

简介 

FastDFS是一款开源的轻量级分布式文件系统纯C实现,支持Linux、FreeBSD等UNIX系统类google FS,不是通用的文件系统,只能通过专有API访问,目前官方提供了C、Java和PHP API为互联网应用量身定做,追求高性能和高扩展性,FastDFS可以看做是基于文件的key value pair存储系统,称作分布式文件存储服务更为合适。

特点:

分组存储,灵活简洁

对等结构,不存在单点

文件ID由FastDFS生成,作为文件访问凭证。FastDFS不需要传统的name server

和流行的web server无缝衔接,FastDFS已提供apache和nginx扩展模块

大中小文件均可以很好支持,支持海量小文件存储

存储服务器上可以保存文件附加属性

名词解释:

Tracker Server:跟踪服务器,主要做调度工作,在访问上起负载均衡的作用。在内存中记录集群中group和storage server的状态信息,是连接Client和Storage server的枢纽。 因为相关信息全部在内存中,Tracker server的性能非常高,一个较大的集群(比如上百个group)中有3台就足够了。

Storage Server:存储服务器,文件和文件属性(meta data)都保存到存储服务器上。

实践-服务端

系统:ubuntu

开发工具:vim

web服务:nginx

基于socket自定义通信协议

服务端的安装参考官方文档 有不懂的可以联系虫子 这里说下问题比较多的2个地方 一个是libevent的版本问题 另一个是ubuntu最新版本中对于libpthread等库文件的存放位置问题

安装完fastdfs以后 假设你的服务端程序安装在/usr/local目录

我们会在bin目录下找到以下文件

storage服务器启动命令 /usr/local/bin/fdfs_storaged /FastDFS/conf/storage.conf

tracker服务器启动命令 /usr/local/bin/fdfs_trackerd /FastDFS/conf/tracker.conf

我们运行monitor查看下配置信息

group count: 1

Group 1:
group name = test
free space = 5 GB
storage server count = 2
active server count = 2
storage_port = 23000
storage_http_port = 0
store path count = 1
subdir count per path= 3
current write server index = 0

    Host 1:
        ip_addr = 192.168.234.139 (ubuntu)  ACTIVE
        total storage = 9GB
        free storage = 5GB
        total_upload_count = 2
        success_upload_count = 2
        total_set_meta_count = 0
        success_set_meta_count = 0
        total_delete_count = 0
        success_delete_count = 0
        total_download_count = 0
        success_download_count = 0
        total_get_meta_count = 0
        success_get_meta_count = 0
        total_create_link_count = 0
        success_create_link_count = 0
        total_delete_link_count = 0
        success_delete_link_count = 0
        last_heart_beat_time = 2012-01-05 18:45:50
        last_source_update = 2012-01-05 01:20:28
        last_sync_update = 1969-12-31 16:00:00
        last_synced_timestamp= 1969-12-31 16:00:00
    Host 2:
        ip_addr = 192.168.234.140  ACTIVE
        total storage = 18GB
        free storage = 12GB
        total_upload_count = 16
        success_upload_count = 16
        total_set_meta_count = 0
        success_set_meta_count = 0
        total_delete_count = 0
        success_delete_count = 0
        total_download_count = 0
        success_download_count = 0
        total_get_meta_count = 0
        success_get_meta_count = 0
        total_create_link_count = 0
        success_create_link_count = 0
        total_delete_link_count = 0
        success_delete_link_count = 0
        last_heart_beat_time = 2012-01-05 18:45:50
        last_source_update = 2012-01-05 01:54:02
        last_sync_update = 1969-12-31 16:00:00
        last_synced_timestamp= 1969-12-31 16:00:00

本文URL地址:http://www.bianceng.cn/Programming/csharp/201410/45480.htm

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索存储
, 服务器
, 文件
, server
, count
, fastdfs
, storage
C#   集群
c站、c语言、cf、ch、c罗,以便于您获取更多的相关知识。

时间: 2024-10-03 09:57:00

C#和.NET中如何利用FastDFS打造分布式文件系统的相关文章

巧用WPS中的利用公式打造精美的成绩册

  考试结束后统计学生的成绩并排出各单科名次和总分名次是我们这里班主任必做的功课.在WPS表格中,计算学生总分使用SUM函数,用RANK函数来排名次,这也是每位班主任都知道的.但是,每次考试总有一些特殊情况的学生缺考.如果我们只按实际得分计算总分并排定名次的话,显然会有失公允,而且会导致排名次时出错.只有再经过手工排除特殊情况的学生,才能把成绩册及排名搞清楚.因此,对于这样的成绩册,显然还有优化的必要性. 一.单科缺考学生的学科名次排定 解决缺考学生学科名次的排定问题,需要在排名时做一个判断:如

浅谈利用SEO打造品牌的三个极致

SEO的发展日益成熟,很多站长也都已经熟悉了基本的SEO知识.在论坛中,看到有的站长说利用SEO打造品牌的帖子,引起了我极大的兴趣,其实这个思路我一直都赞同,也一直在运用中.所以,对于利用SEO打造自己的品牌,我也自然有话要说.我认为要把这个事情做好需要把三个事情做到极致,否则,品牌的打造就会受到一定的阻力,下边分别予以阐述. 极致一:垂直领域要彻底 现在互联网有很多机会,但是这些机会已经被太多的人看中,所留给我们的只有巨大的竞争.因此,在缝隙中想要脱颖而出必须有一定的策略,尤其是人力与资源都有

利用SEO打造品牌网站需要摆脱关键词的束缚

以前看过一篇文章叫我眼中的SEO三重境界,写的很好,大家可以去看看.做SEO第一境界是把关键词排名做上去,第二重境界是用户体验和打造营销性的网站,第三重境界就是利用SEO打造品牌网站.今天就是在这里给大家谈一下关于打造品牌的一点知识,品牌网站的好处自然不多说,大家都知道,现在品牌站在百度的权重是越来越高了,记得上次百度就是为了打击寨网站的使用了代号为"太阳风暴"的行动.致使很多的山寨网站被K.打造品牌网站就像是在百度买了一张保险一样,是不会被K(一般情况下).品牌网站打造方法有很多种,

利用Photoshop打造飞溅的艺术脸谱教程

  利用Photoshop打造飞溅的艺术脸谱,体效果越来越流行,这种效果风格独特,效果非常有艺术感.制作方法并不复杂.关键是喷溅素材的应用,选定好主体后,把喷溅素材融合进去即可 最终效果 1.打开下图所示的背景素材. 2.这时候看星空图片有些模糊,可以点击"滤镜>锐化>USm锐化"并如下设置. 3.下面来将一个光源,新建一个图层,选择"渐变工具",设置颜色为"白色到透明"渐变,在画布中心向外拖出一个渐变,如下所示. 4.完成后将图层的

利用危机打造更出色的董事会

利用危机打造更出色的董事会 文 / Andrew Campbell.Stuart Sinclair 过去好几代人都未曾经历过现在这样的困难.而在困难时期,董事们总是就公司情况提出疑问.但是,他们却很少就其自身的情况提出质疑.例如:"我们是否是合适的董事会人选?是否提出了正确的问题?提供了正确的领导?是否以最富有成效的方式对公司管理层提出了挑战?" 面对经济动荡带来的压力和机遇,董事会需要全面而诚实地评估其绩效,从而确定应做出哪些变革,变革有多么急迫,以及应该从哪里着手.董事会应该定期对

中汇技术:打造银行间市场本外币交易背后的共享服

"在新一代系统架构转型过程中,中汇公司借鉴阿里分布式技术和经验,开阔视野,拓展思路,优化完善全自主研发的分布式服务化基础架构平台.我们对通过不断创新夯实金融基础设施建设,助推中国外汇交易中心成为'全球人民币及相关产品交易主平台和定价中心'充满信心,不忘初心,砥砺前行!" --2017年"云栖奖"获奖人,中国外汇交易中心下属中汇信息技术(上海)有限公司副总经理 李正先生 一.人民币走向全球第三大国际货币 中国正在从经济大国走向经济强国,并且正在以14亿人口的产业创新动

合理利用微博打造品牌营销赚钱

中介交易 http://www.aliyun.com/zixun/aggregation/6858.html">SEO诊断 淘宝客 云主机 技术大厅 在网络营销中,有众多的方式可以实现网络营销,对于微博营销的看法,还是仁者见仁智者见智,无法给予太多解答,今天华众之家就在这里为大家讲解一下怎样合理利用微博打造品牌来实现微博营销赚钱的模式. 首先来了解下什么是微博营销,所谓微博营销是新推出的一个网络营销方式,随着微博的火热,即催生了有关的营销方式,就是微博营销.每一个人都可以在新浪,网易等等注

在Oracle 8i的SQL*Plus中如何利用LOB字段存取操作系统二进制文件

oracle|二进制    在Oracle 8i的SQL*Plus中如何利用LOB字段存取操作系统二进制文件                                                        广东省岭澳核电有限公司工程控制处管理信息科(518124)  黄福同           Oracle 8i数据库系统功能比前面版本更加完善,尤其是出现了BLOB,CLOB,NCLOB,BFILE这些LOB(大型对象)类型来取代功能有限的LONG.LONGRAW类型.BLOB字段

excel中如何利用公式做求和算法?

  excel中如何利用公式做求和算法?          步骤 1.隔列求和 H3=SUMIF($A$2:$G$2,H$2,A3:G3); 2.单条件求和 F2=SUMIF(A:A,E2,C:C) 3.单条件模糊求和 公式: SUMIF(A2:A4,"*A*",C2:C4) 4.多条件模糊求和 公式:C11=SUMIFS(C2:C7,A2:A7,A11&"*",B2:B7,B11); 5.多表相同位置求和 公式:b2=SUM(Sheet1:Sheet19!