繁体   English   中英

Apache Commons NET:我应该在每个连接上创建一个新的 FTPClient 对象还是重用一个?

[英]Apache Commons NET: Should I create a new FTPClient object on each connection or reuse one?

我只是想知道:在我的 Java 应用程序中,每次我需要连接到 FTP 服务器时,我应该创建一个新的 FTPClient 对象,还是应该创建一个 FTPClient() 对象并在每次连接到FTP服务器?

两者都可以工作,但 apache commons.net 库不是线程安全的,因此如果您确实使用一个具有多个线程的客户端,请注意您必须同步对它的访问。

如果不确切知道您的代码必须做什么(连接频率、需要传输多少文件等),很难说。

我个人的意见是一个FTPClient()但每次你需要做某事时连接/验证/传输/断开连接(假设两者之间会有合理的差距)。 原因是 FTP 会话通常具有相当短的不活动超时。

重用会更好,因为每次创建新连接时都不需要新实例,即使是新服务器也是如此。 因为连接和断开连接方法可以为您完成这项工作。

所以尽可能多地重用对象。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM