文件上传+Fastdfs
1、Fastdfs
概念:
- FastDFS是一套高性能的文件服务器集群,他提供了文件上传、下载等服务。(用他对文件进行统一的处理,一般在微服务中我们把它用来对图片进行统一的处理,他就是一个单独的微服务)
1.1 linux操做系统安装(配置)fastdfs
一般使用 fastdfs都是在linux上进行操做的(相当于在linux上安装fastdfs,然后再把图片上传到fastdfs)
- 配置Fastdfs(在linux上进行cmd终端,执行以下命令)
1.修改client.conf
vi /etc/fdfs/client.conf -> 把ip修改为当前虚拟机ip
2.修改storage.conf
vi /etc/fdfs/storage.conf -> 把ip修改为当前虚拟机ip
3.启动fastdfs
#注意这里两个都要启动
service fdfs_trackerd start
service fdfs_storaged start
4.查看是否启动成功
netstat -unltp|grep fdfs
5.查看监控信息
/usr/bin/fdfs_monitor /etc/fdfs/storage.conf
6.启动Nginx
/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
7.关闭防火墙/开放防火墙 80 端口
service iptables stop
或者执行:
/sbin/iptables -I INPUT -p tcp --dport 80 -j ACCEPT
/etc/rc.d/init.d/iptables save
注意:网络使用的是桥接模式
8.测试Nginx
在虚拟机里面: curl http://127.0.0.1:80
在宿主机测试:浏览器访问 http://127.0.0.1:80
9.测试上传(上传到fastdfs)
fdfs_test /etc/fdfs/client.conf upload /root/虚拟机里面的图片.jpg
1.2 java代码Hello的简单测试
1、打jar包
- 手动到网上去下载源码然后将源码打jar包到maven仓库
- 将这个源码下载完后进入根目录里面然后cmd执行下面的命令,就能自动进行打包
使用maven从源码安装:mvn clean install
2、导包
<dependency>
<groupId>org.csource</groupId>
<artifactId>fastdfs-client-java</artifactId>
<version>1.29-SNAPSHOT</version>
</dependency>
3、添加配置文件fdfs_client.conf ,将其中的服务器地址设置为虚拟机ip.22122(后面的不是端口)
//…
tracker_server=192.168.25.133:22122
//…
// 1、加载配置文件,配置文件中的内容就是 tracker 服务的地址。
ClientGlobal.init("D:/maven_work/fastDFS-demo/src/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:/pic/benchi.jpg", "jpg",
null);
// 7、返回数组。包含组名和图片的路径。
for (String string : strings) {
System.out.println(string);
}
控制台输出如下结果:
group1
M00/00/00/wKgZhVkMP4KAZEy-AAA-tCf93Fo973.jpg
在浏览器输入:
weixin_45028726 发布了20 篇原创文章 · 获赞 4 · 访问量 2093 私信 关注http://192.168.25.133/group1/M00/00/00/wKgZhVkMP4KAZEy-AAA-tCf93Fo973.jpg