阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

FastDFS在.Net平台上的使用

156次阅读
没有评论

共计 2971 个字符,预计需要花费 8 分钟才能阅读完成。

我们已经了解了 FastDFS 是什么,一般稍微大一的网站都会做文件分离存储,FastDFS 这轻型的分布式文件存储方式,非常有用。

FastDFS 在.Net 平台上的使用

下面我们就了解一下,FastDFS 在.net 平台下如何实现上传和下载功能。

咱用了 WINFOM 实现了一个简单的 DEMO:

FastDFS 在.Net 平台上的使用

左侧为 tracker 可以分配多个,换行显示

右侧为 storage 列表,这里只做显示,可以不填

1、点击“连接 FASTDFS”按钮,系统将连接 fastdfs 服务器

ConnectionManager.Initialize(trackerIPs);

storageNode = FastDFSClient.GetStorageNode(“group1”);

FastDFS 在.Net 平台上的使用

如果 Fastdfs 服务器配置正确,你会看到“连接成功”的字样。

2、点击“选择文件并上传”按钮,文件将会把文件上传至 fastdfs 服务器

OpenFileDialog openFileDialog = new OpenFileDialog();

          openFileDialog.Filter = “ 文本文件 |*.*|png|*.png|JPG|*.jpg|JPEG|*.jpeg| 所有文件 |*.*”;

          openFileDialog.RestoreDirectory = true;

          openFileDialog.FilterIndex = 1;

          if (openFileDialog.ShowDialog() == DialogResult.OK)

          {

              string fName = openFileDialog.FileName;

              byte[] content = null;

              /*  FileInfo fileInfo = new FileInfo(filePath);

                return fileInfo.Length;*/

              FileStream streamUpload = new FileStream(fName, FileMode.Open);

              using (BinaryReader reader = new BinaryReader(streamUpload))

              {

                  content = reader.ReadBytes((int)streamUpload.Length);

              }

              textBox1.Text = fName;

           

              // 主文件

              string fileName = FastDFSClient.UploadFile(storageNode, content, “png”);

              var info = FastDFSClient.GetFileInfo(storageNode, fileName);

              // 从文件

              var slaveFileName = FastDFSClient.UploadSlaveFile(“group1”, content, fileName, “_120x120”, “png”);

              var slaveInfo = FastDFSClient.GetFileInfo(storageNode, slaveFileName);

              listBox1.Items.Add(string.Format(“ 主文件:http://{0}:8080/group1/{1}”, trackerIPs[0].Address, fileName));

              listBox1.Items.Add(string.Format(“ 主文件大小:{0}KB, 创建时间:{1}”, info.FileSize, info.CreateTime));

              listBox1.Items.Add(string.Format(“ 从文件:http://{0}:8080/group1/{1}”, trackerIPs[0].Address, slaveFileName));

              listBox1.Items.Add(string.Format(“ 从文件大小:{0}KB, 创建时间:{1}”, slaveInfo.FileSize, slaveInfo.CreateTime));

          }

这时候你会在界面中看到你上传的文件返回的文件访问地址,你可以尝试在网页中打开,前提是上一篇的 Nginx 一定要配对。

对于“主文件”和“从文件”的概念,通常是用在图片文件的存储上,例如缩略图,就可以从文件进行存储。这个意义不是很大了解一下就行。

这个界面参考别的博友的,可惜他没有代码,我帮他补上,小酌一下勿喷,哈哈

程序代码可以到 Linux 公社资源站下载:

—————————————— 分割线 ——————————————

免费下载地址在 http://linux.linuxidc.com/

用户名与密码都是 www.linuxidc.com

具体下载目录在 /2017 年资料 / 2 月 / 7 日 /FastDFS 在.Net 平台上的使用 /

下载方法见 http://www.linuxidc.com/Linux/2013-07/87684.htm

—————————————— 分割线 ——————————————

CentOS6 环境单服务器 FastDFS+Nginx+fastdfs-nginx-module 安装配置 http://www.linuxidc.com/Linux/2015-01/111889.htm

Ubuntu 14.04 下部署 FastDFS 5.08+Nginx 1.9.14 http://www.linuxidc.com/Linux/2016-07/133485.htm

CentOS 6.2 下 fastDFS 的完整安装和配置步骤 http://www.linuxidc.com/Linux/2012-12/75989.htm

FastDFS 在 Ubuntu 下的安装,PHP 客户端 http://www.linuxidc.com/Linux/2012-09/71459.htm

FastDFS 分布式文件服务器安装,及配置,测试 http://www.linuxidc.com/Linux/2012-09/71458.htm

CentOS 7 安装配置分布式文件系统 FastDFS 5.0.5  http://www.linuxidc.com/Linux/2016-09/135537.htm

FastDFS 分布式存储服务器安装过程详解 http://www.linuxidc.com/Linux/2016-10/136544.htm

FastDFS 之文件服务器集群部署详解 http://www.linuxidc.com/Linux/2017-01/139891.htm

FastDFS 的详细介绍 :请点这里
FastDFS 的下载地址 :请点这里

本文永久更新链接地址 :http://www.linuxidc.com/Linux/2017-02/140350.htm

正文完
星哥说事-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2022-01-21发表,共计2971字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中