성능 최적화 - Nimble Studio File Transfer

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

성능 최적화

이 주제에서는 업로드 속도가 느린 원인을 설명하고 속도를 높이기 위해 변경할 수 있는 몇 가지 사항을 제공합니다.

네트워크 대역폭

File Transfer는 네트워크 사용량과 포화도를 높입니다. 사용하도록 할당된 대역폭보다 더 빠르게 전송할 수는 없습니다. 시스템에 500Mbps의 네트워크 대역폭이 할당된 경우 File Transfer에서 전송을 시도할 수 있는 가장 빠른 속도는 500Mbps입니다. 전송 속도를 높이려면 호스트 시스템에 추가 대역폭을 할당해야 합니다.

디스크 처리량

디스크 처리량은 네트워크 대역폭 증가에 따라 규모를 조정해야 합니다. 높은 최대 활성 전송 또는 스레드 수 구성을 지원하려면 충분한 I/O 처리량이 필요합니다. 호스트 시스템에 연결된 스토리지(예: NAS, SAN, 로컬 SSD, 외장 HDD)의 I/O 처리량이 충분하지 않으면 전송 속도가 느려집니다. 이를 방지하려면 하드웨어, CPU, 인터넷을 업그레이드하여 인프라를 업그레이드하세요.

지연 시간

다운로드 및 업로드 시설과 지리적으로 가장 가까운 AWS 리전에 File Transfer 인프라를 배포하는 것이 좋습니다. 전송 프로필이 AWS Direct Connect를 사용하지 않는 한 전송 프로필의 인터넷 서비스 공급자와 대상 사이의 지연 시간은 달라질 수 있습니다. AWS Direct Connect에 대한 자세한 내용은 AWS Direct Connect 사용 설명서를 참조하세요.

Throttling

File Transfer는 대역폭 사용을 제한할 수 없습니다. 이 문제를 해결하려면 서비스 품질(QoS)을 사용하여 방화벽 계층 또는 가상 근거리 통신망(VLAN) 계층의 트래픽 형태를 제한합니다.

열린 파일의 최대 제한

일부 호스트 시스템(대부분 Linux 및 macOS)에는 최대 열린 파일 수에 대해 미리 구성된 소프트 및 하드 제한이 있습니다. File Transfer는 최소한 디스크 및 네트워크 리소스에 액세스하기 위한 파일 설명자를 생성합니다. 호스트 시스템의 최대 열린 파일 수를 20,000개로 제한하는 것이 좋습니다.

버킷 가시성

File Transfer는 기본 Amazon S3 엔드포인트를 사용합니다. 기본 Amazon S3 가속 엔드포인트를 사용하도록 선택할 수 있습니다. 가속 엔드포인트에 대한 자세한 내용은 Amazon Simple Storage Service(S3) 섹션을 참조하세요.

AWS Command Line Interface(AWS CLI)를 사용하여 버킷의 콘텐츠를 나열할 수 있습니다. File Transfer 액세스 및 보안 키를 사용하거나 Amazon S3 콘솔을 통해 이 작업을 수행할 수 있습니다.

업로드 최적화(자동 조정이 아닌 경우)

전반적으로 최상의 성능을 얻으려면 청크 크기를 25~100MB 사이로 유지하세요. 스레드 및 최대 활성 전송은 업로드 패키지의 특성에 따라 달라집니다. 단일 세션 전송 속도는 사용 중인 프로토콜(TCP/HTTP)에 따라 제한됩니다. 최적의 구성에는 더 작은 청크 크기가 포함되며 더 높은 스레드 및 최대 활성 전송 설정이 포함됩니다. 청크 크기를 중간 파일 크기보다 약간 크게 설정하는 것이 가장 좋습니다. 하지만 대부분의 하드웨어에서 50MB를 초과하지 않는 것이 가장 좋습니다.

구성 및 데이터베이스 파일 위치

구성 파일과 데이터베이스 파일은 FILETRANSFER_CONFIG_DIR 환경 변수에 정의된 대로 모든 디렉터리에 위치할 수 있습니다. 변수가 설정되지 않은 경우 이러한 파일은 기본적으로 ~/.filetransfer에 위치합니다. 구성 파일 이름이 configuration.yaml로 지정되고 데이터베이스 파일 이름이 checksum-cache.db로 지정됩니다.

API 서버 해제

기본적으로 File Transfer는 포트 50005에서 File Transfer 그래픽 사용자 인터페이스(GUI) 애플리케이션에서 들어오는 연결을 수신합니다. 이 기능을 끄려면 구성 파일에서 api_server.enabled를 정의하고 false로 설정합니다.