ファイルアップロード+ Fastdfs
1、Fastdfs
コンセプト:
- 高性能のFastDFSファイルサーバークラスタ彼は、ファイルのアップロード、ダウンロード、およびその他のサービスを提供しています。彼とのファイルの(均一な処理、一般的なマイクロサービスでは、我々は、画像の均一な処理にそれを置きます彼は)単一のマイクロサービスです
1.1 Linuxオペレーティングシステムのインストール(構成)FastDFSを行います
Fastdfsは、一般的に(等価fastdfsは、Linuxにインストールされ、その後、fastdfsに写真をアップロードする)は、Linuxで実行体操を行うために使用されています
- 設定fastdfs(cmdは、端末のLinux上で実行、次のコマンドを実行します)
1.変更client.conf
VI /etc/fdfs/client.conf - >変更するには、現在の仮想マシンのIP IP
2. [変更storage.conf
VI /etc/fdfs/storage.conf - >変更するには、現在の仮想マシンのIP IP
3. [スタート] fastdfs
2が開始することを#注意
サービスが開始fdfs_trackerd
サービスfdfs_storagedスタート
正常に起動するかどうか4.チェック
netstatの-unltp | grepをFDF
5.レビュー監視情報
/ usr / binに/ fdfs_monitor /etc/fdfs/storage.conf
6. [スタート] nginxの
/ usr / local / nginxの/ sbinに/ nginxの-c /usr/local/nginx/conf/nginx.conf
ファイアウォール/ファイアウォールのオープンポート80をオフにします7.
service iptables stop
または実行:
/sbin/iptables -I INPUT -p tcp --dport 80 -j ACCEPT
/etc/rc.d/init.d/iptables save
注:ブリッジモードを使用してネットワーク
8.試験nginxの
カールhttp://127.0.0.1:80:仮想マシン内
ブラウザアクセスhttp://127.0.0.1:80:ホストテストで
9.テストアップロード(fastdfsへのアップロード)
fdfs_test /etc/fdfs/client.confアップロード/ルート/画像.JPG内の仮想マシン
こんにちはの1.2テスト単純なJavaコード
1瓶の包装
- 瓶のMavenリポジトリを戦うために、ソースコードとソースコードのパッケージをダウンロードするには、インターネットへの手動
- ルートディレクトリにこのソースをダウンロードした後、その後、次のコマンドcmdを実行自動的にパッケージ化することができます
使用して、ソースからインストールMavenの:クリーンインストールMVN
2、リーダーパケット
<dependency>
<groupId>org.csource</groupId>
<artifactId>fastdfs-client-java</artifactId>
<version>1.29-SNAPSHOT</version>
</dependency>
3. [追加プロフィールfdfs_client.conf 、サーバーアドレスとして設定されます仮想マシンのIP0.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
ブラウザでは、入力します。
http://192.168.25.133/group1/M00/00/00/wKgZhVkMP4KAZEy-AAA-tCf93Fo973.jpg