필자는 자바 애플리케이션에서 FTP 서버에 연결할 때마다 새 FTPClient 객체를 만들어야하는지, 아니면 하나의 FTPClient() 객체를 만들어야하고 연결할 때마다 다시 사용해야하는지 궁금합니다. FTP 서버에 연결 하시겠습니까?Apache Commons NET : 각 연결에서 새 FTPClient 객체를 만들거나 다시 연결해야합니까?
8
A
답변
3
새 서버를 만들 때마다 새 인스턴스가 필요하지 않으므로 재사용하는 것이 좋습니다. 연결 및 연결 끊기 방법이 작업을 수행 할 수 있기 때문입니다.
가능한 한 많은 개체를 다시 사용하십시오.
3
코드가 수행해야하는 작업 (연결 빈도, 전송해야하는 파일 수 등)을 모르는 상태에서 말하기는 어렵습니다.
내 개인 의견은 FTPClient()
이지만 연결을 시도 할 때마다 연결/인증/전송/연결 끊기 (적절한 간격이있을 것으로 가정)입니다. FTP 세션의 비활성 시간 제한은 매우 짧습니다.
11
두 가지 모두 작동하지만 apache commons.net 라이브러리는 not thread safe이므로 하나의 클라이언트에서 여러 스레드를 사용하는 경우 액세스 권한을 동기화해야합니다.
감사합니다. 그냥 확인하고 있습니다 :) – AlexPriceAP
그러나 동시 연결을 만들려면 여러 인스턴스가 필요할 것입니다. –
새 인스턴스를 만드는 비용에 대한 데이터가 있습니까? 아니면 그냥 추측입니까? –