分布式文件系统FastDfs

FastDFS是一款高可用、高性能的分布式文件系统,本文介绍了其基本概念、配置方法和实际使用步骤,包括端口放行、配置文件设置、文件上传及在浏览器中查看图片。同时,给出了在实际项目中如何将文件上传功能作为工具类整合到common模块的建议。
摘要由CSDN通过智能技术生成

一.何为FastDfs?
FastDFS 是一款开源的分布式文件系统。充分考虑了冗余备份、负载均衡、线性扩容等机制,并注重高可用、高性能等指标,用于搭建一套高性能的文件服务器集群提供文件上传、下载等服务。
在这里插入图片描述
简单描述在这里插入图片描述
二.使用方法(f_Demo)
1.先配置一个fdfs虚拟机
记得放行端口号:
firewall-cmd --add-port=22122/tcp --permanent
firewall-cmd --add-port=23000/tcp --permanent
firewall-cmd --reload

使用demo
1.在porm中配置文件

cn.bestwu
fastdfs-client-java
1.27

2.添加配置文件fdfs_client.conf ,将其中的服务器地址设置为192.168.188.146
tracker_server=192.168.188.146:22122

**3.创建java类TestStorageClient,代码如下:**
package fastDFSdemo;
import java.io.IOException;
import org.csource.common.MyException;
import org.csource.fastdfs.ClientGlobal;
import org.csource.fastdfs.StorageClient;
import org.csource.fastdfs.StorageServer;
import org.csource.fastdfs.TrackerClient;
import org.csource.fastdfs.TrackerServer;
public class TestStorageClient {

	public static void main(String[] args) throws IOException, MyException {
        // 1、加载配置文件,配置文件中的内容就是 tracker 服务的地址。
		ClientGlobal.init("./src/main/resources/fdfs_client.conf");
		// 2、创建一个 TrackerClient 对象。直接 new 一个。
		TrackerClient trackerClient = new TrackerClient();
		// 3、使用 TrackerClient 对象创建连接,获得一个 TrackerServer 对象。
		TrackerServer trackerServer = trackerClient.getConnection();
		// 4、创建一个 StorageServer 的引用,值为 null
		StorageServer storageServer = null;
		// 5、创建一个 StorageClient 对象,需要两个参数 TrackerServer 对象、StorageServer 的引用
		StorageClient storageClient = new StorageClient(trackerServer, storageServer);
		// 6、使用 StorageClient 对象上传图片。
		//扩展名不带“.”
		String[] strings = storageClient.upload_file("D:/chart/2.jpg", "jpg",
				null);
		// 7、返回数组。包含组名和图片的路径。
		for (String string : strings) {
			System.out.println(string);
		}
	}
	}

控制台输出如下结果:
group1
M00/00/00/wKi8klv9PcCAN3w9AACSXEWdWYM543.jpg

在浏览器输入:

http://192.168.188.146/group1/M00/00/00/wKi8klv9PcCAN3w9AACSXEWdWYM543.jpg
即可看到所上传的图片。

**

三.实际使用

**
1.将文件上传的功能作为工具类 抽取出 到common模块

<dependency>
    <groupId>cn.bestwu</groupId>
    <artifactId>fastdfs-client-java</artifactId>
    <version>1.27</version>
</dependency>
		<dependency>
		<groupId>commons-fileupload</groupId>
		<artifactId>commons-fileupload</artifactId>
</dependency>	

2.配置使用的fdfs配置文件
将fdfs使用的配置文件拷贝到common的resource是下

3.实现图片上传的工具类 使用提供的资源(CV即

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值