日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > java >内容正文

java

java ftp限速_为什么Java FTP客户端的传输速率存在很大差异

發(fā)布時間:2023/12/19 java 43 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java ftp限速_为什么Java FTP客户端的传输速率存在很大差异 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

也許有人可以回答我這個問題.在我最近的工作中,我注意到我的應用程序(通過FTP下載更新)在與

Linux一起使用時非常慢.我在Mac上開發(fā)這些東西,所以我之前沒有注意到這個問題,因為Mac OS下的下載速度并不是很低.但是當轉向Linux時,應用程序表現得非常不同.

FTP服務器(在Ubuntu服務器上運行的純FTP)連接到與客戶端相同的LAN,因此不考慮Internet速度問題.由于性能低下,我將Apache FTPClient更改為edtFTPj / Free.差異仍然顯著但可以接受.作為測試用例,我總是下載大小約為30 MB的文件.然后我檢查了ftp服務器日志以了解傳輸速率.

你自己看.提到的VMWare在Mac上運行.除非另有說明,否則Java是Oracle Java 1.7.

Apache Commons Net 2.3

代碼看起來像這樣

FTPClient ftp = new FTPClient();

ftp.connect("srv0006");

ftp.login("anonymous", "asd");

ftp.setFileType(FTP.BINARY_FILE_TYPE);

File target = new File("/tmp/pub.tar");

FileOutputStream fos = new FileOutputStream(target);

ftp.retrieveFile("/pub.tar", fos);

fos.close();

以下是ftp日志的結果

Mac OS從IntelliJ Idea開始

downloaded (30452736 bytes, 21200.67KB/sec)

Mac OS從shell開始

downloaded (30452736 bytes, 21471.75KB/sec)

Windows 7(在VMWare中)

downloaded (30452736 bytes, 65243.15KB/sec)

運行Oracle Java的OpenSuse(在VMWare中)

downloaded (30452736 bytes, 5274.56KB/sec)

運行OpenJDK的OpenSuse(在VMWare中)

downloaded (30452736 bytes, 7663.68KB/sec)

Ubuntu 12.04.1 LTS

在與千兆以太網連接的另一臺PC上運行到同一LAN.其他Ubuntu機器的行為方式完全相同.我在20分鐘后退出了轉會.查看轉移率.

downloaded (7077888 bytes, 6.10KB/sec)

edtFTP4j 2.4.0

在此之后,我轉到了edtFTP4j.結果好多了.

FileTransferClient ftp = new FileTransferClient();

ftp.setRemoteHost("srv0006");

ftp.setUserName("anonymous");

ftp.setPassword("asd");

ftp.connect();

ftp.downloadFile("/tmp/pub.tar", "/pub.tar");

ftp.disconnect();

結果發(fā)生了顯著變化:

Mac OS從IntelliJ Idea開始

downloaded (30452736 bytes, 109431.60KB/sec)

Mac OS從shell開始

downloaded (30452736 bytes, 110333.66KB/sec)

Windows 7(在VMWare中)

downloaded (30452736 bytes, 91318.64KB/sec)

運行Oracle Java的OpenSuse(在VMWare中)

downloaded (30452736 bytes, 89312.46KB/sec)

運行OpenJDK的OpenSuse(在VMWare中)

downloaded (30452736 bytes, 89041.05KB/sec)

Ubuntu 12.10(在VMWare中)

downloaded (30452736 bytes, 81154.99KB/sec)

Ubuntu 12.04.1 LTS在i5筆記本上運行,Wifi(50 MBit / s)

downloaded (30452736 bytes, 2883.84KB/sec)

Ubuntu 12.04.1 LTS在i5筆記本電腦,千兆以太網上運行

downloaded (30452736 bytes, 93822.44KB/sec)

Ubuntu 12.04.1 LTS

在前面提到的PC上運行(具有6.10 KB /秒tx速率的PC)

downloaded (30452736 bytes, 11633.38KB/sec)

我不明白這一點.誰有線索在這里發(fā)生什么?

再見,托斯滕……

總結

以上是生活随笔為你收集整理的java ftp限速_为什么Java FTP客户端的传输速率存在很大差异的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。