我正在编写一个Rest服务,它连接到FTP服务器以读取一些文件,然后对读取的数据执行一些操作以提供服务请求。我正在使用Apache公用程序FTPClient
。FTPClient Pool - Java
作为临时解决方案,我创建了一个FTPClient
对象 - 然后将其连接 - 然后使用凭据登录 - 在方法内(客户端是此方法的本地 - 执行此操作时为FTPClient
不是线程安全的)我的数据访问层,然后在退出方法之前将其断开连接(即在读取文件后)。问题是,FTPClient
需要3-7秒钟才能登录,这非常高。所以我在考虑实现一个FTPClientPool
,它可以在数据访问方法中提供已经准备好的客户端。
是否有这样的ClientPools已经存在?
如果是,那么我应该选择什么?
如果否,实现的难度一旦创建并连接,apache FTPClient保持活动状态多久?为无限的时间? (我的意思是什么是FTPClient的默认保持活动时间 - 在客户端断开连接后的空闲时间 - 因为我在java文档中看到了各种各样的时间。:()接下来的问题是如何让它永远活着??(可发送定期后NOOPS在一个单独的线程?)任何有关我应该如何前进是真正有用样的帮助。
感谢&问候
嗨菲利普,感谢您的回应。正如我所提到的 - 我的REST服务中的数据访问层与FTP Server.And会谈,对我来说非常重要,如果不是太重要的话。 – 2013-03-01 04:11:03