활성, 유휴 및 동시 HTTP 연결의 이점
HTTP 연결을 구성하는 방법은 StorageGRID 시스템의 성능에 영향을 줄 수 있습니다. 구성은 HTTP 연결이 활성 상태인지 유휴 상태인지 또는 여러 개의 동시 연결이 있는지 여부에 따라 달라집니다.
다음과 같은 유형의 HTTP 연결에 대한 성능 이점을 확인할 수 있습니다.
-
유휴 HTTP 연결
-
활성 HTTP 연결
-
동시 HTTP 연결
유휴 HTTP 연결을 열어 두면 얻을 수 있는 이점
클라이언트 애플리케이션이 유휴 상태일 때에도 HTTP 연결을 열어두면 나중에 트랜잭션을 수행할 수 있습니다. 최대 10분 동안 유휴 HTTP 연결을 열어 둡니다. StorageGRID 10분 이상 열려 있고 유휴 상태인 HTTP 연결을 자동으로 닫을 수 있습니다.
개방 및 유휴 HTTP 연결은 다음과 같은 이점을 제공합니다.
-
StorageGRID 시스템이 HTTP 트랜잭션을 수행해야 한다고 결정하는 시간부터 StorageGRID 시스템이 트랜잭션을 수행할 수 있는 시간까지 지연 시간을 줄였습니다
지연 시간 감소는 특히 TCP/IP 및 TLS 연결을 설정하는 데 필요한 시간의 주요 장점입니다.
-
이전에 수행된 전송을 사용하여 TCP/IP 저속 시작 알고리즘을 프라이밍하여 데이터 전송 속도를 높였습니다
-
클라이언트 응용 프로그램과 StorageGRID 시스템 간의 연결을 중단하는 여러 가지 장애 조건에 대한 즉각적인 알림
느린 시작의 이점과 리소스 할당의 균형을 맞춰 유휴 연결을 얼마나 오랫동안 열어둘지 결정합니다.
활성 HTTP 연결의 이점
스토리지 노드에 직접 연결하는 경우 HTTP 연결이 지속적으로 트랜잭션을 수행하더라도 활성 HTTP 연결 기간을 최대 10분으로 제한해야 합니다.
연결을 열어 두어야 하는 최대 기간을 결정하는 것은 연결 지속성의 이점과 내부 시스템 리소스에 대한 연결을 이상적으로 할당하는 것입니다.
스토리지 노드에 대한 클라이언트 연결의 경우 활성 HTTP 연결을 제한하면 다음과 같은 이점이 있습니다.
-
StorageGRID 시스템 전체에서 최적의 로드 밸런싱을 지원합니다.
시간이 지남에 따라 부하 분산 요구 사항이 변경되어 HTTP 연결이 더 이상 최적이 아닐 수 있습니다. 시스템은 클라이언트 애플리케이션이 각 트랜잭션에 대해 별도의 HTTP 연결을 설정할 때 최상의 부하 분산을 수행하지만, 이 방법은 지속적인 연결과 관련된 귀중한 이점을 무효화합니다.
-
클라이언트 응용 프로그램이 사용 가능한 공간이 있는 LDR 서비스로 HTTP 트랜잭션을 보낼 수 있도록 합니다.
-
유지보수 절차를 시작할 수 있습니다.
일부 유지 관리 절차는 진행 중인 모든 HTTP 연결이 완료된 후에만 시작됩니다.
부하 분산 서비스에 대한 클라이언트 연결의 경우 일부 유지 관리 절차를 즉시 시작할 수 있도록 개방 연결 기간을 제한하는 것이 유용할 수 있습니다. 클라이언트 연결 기간이 제한되지 않으면 활성 연결이 자동으로 종료되는 데 몇 분이 걸릴 수 있습니다.
동시 HTTP 연결의 이점
병렬 처리를 허용하도록 StorageGRID 시스템에 대한 여러 TCP/IP 연결을 열린 상태로 유지하여 성능을 향상시켜야 합니다. 최적의 병렬 연결 수는 다양한 요인에 따라 달라집니다.
동시 HTTP 연결은 다음과 같은 이점을 제공합니다.
-
지연 시간 단축
다른 트랜잭션이 완료될 때까지 기다리지 않고 즉시 트랜잭션을 시작할 수 있습니다.
-
처리량 향상
StorageGRID 시스템은 병렬 트랜잭션을 수행하고 총 트랜잭션 처리량을 늘릴 수 있습니다.
클라이언트 응용 프로그램은 여러 HTTP 연결을 설정해야 합니다. 클라이언트 응용 프로그램은 트랜잭션을 수행해야 하는 경우 트랜잭션을 현재 처리하지 않는 설정된 연결을 선택하여 즉시 사용할 수 있습니다.
각 StorageGRID 시스템의 토폴로지는 동시 트랜잭션과 연결에 대한 최대 처리량이 다릅니다. 최대 처리량은 컴퓨팅, 네트워크, 스토리지 리소스, WAN 링크, 그리고 StorageGRID 시스템이 지원하는 서버, 서비스 및 애플리케이션의 수에 따라 달라집니다.
StorageGRID 시스템은 종종 여러 클라이언트 애플리케이션을 지원합니다. 동시 연결의 최대 수를 결정할 때 이 점을 명심하세요. 클라이언트 애플리케이션이 StorageGRID 시스템에 각각 연결을 설정하는 여러 소프트웨어 엔터티로 구성된 경우 엔터티 간의 모든 연결을 더합니다. 다음과 같은 상황에서는 동시 연결의 최대 수를 조정해야 할 수도 있습니다.
-
StorageGRID 시스템의 토폴로지는 시스템에서 지원할 수 있는 최대 동시 트랜잭션 및 연결 수에 영향을 줍니다.
-
대역폭이 제한된 네트워크에서 StorageGRID 시스템과 상호 작용하는 클라이언트 응용 프로그램은 개별 트랜잭션이 적절한 시간 내에 완료되도록 동시성 정도를 줄여야 할 수 있습니다.
-
많은 클라이언트 응용 프로그램이 StorageGRID 시스템을 공유하는 경우 시스템의 제한을 초과하지 않도록 동시성 정도를 줄여야 할 수 있습니다.
읽기 및 쓰기 작업을 위한 HTTP 연결 풀 분리
읽기 및 쓰기 작업에 별도의 HTTP 연결 풀을 사용하고 각 풀에 사용할 풀 수를 제어할 수 있습니다. 별도의 HTTP 연결 풀을 통해 트랜잭션을 보다 효율적으로 제어하고 로드 밸런싱을 수행할 수 있습니다.
클라이언트 애플리케이션은 검색 가능(읽기) 또는 저장 가능(쓰기) 부하를 생성할 수 있습니다. 읽기 및 쓰기 트랜잭션을 위한 별도의 HTTP 연결 풀을 사용하여 읽기 또는 쓰기 트랜잭션에 사용할 각 풀의 양을 조정할 수 있습니다.