DICOM 권장사항

이 페이지에서는 Cloud Healthcare API에서 DICOM 데이터로 작업하는 경우 성능을 개선하기 위한 권장사항을 설명합니다.

이미지 뷰어에서 초당 프레임 수(FPS) 극대화

healthcare-imaging-performance-test 도구는 Cloud Healthcare API에서 데이터를 가져오는 DICOM 의료 영상 뷰어에 예상되는 FPS를 미리 볼 수 있는 벤치마크를 제공합니다.

동시 요청 전송

최적의 FPS 성능을 얻으려면 요청을 동시에 전송합니다. 예를 들어 다음 조건에서는 동시 요청 6개에서 20개로 늘리면 FPS를 30FPS에서 60FPS로 향상시킬 수 있습니다.

  • 압축 사용 안 함
  • DICOM 데이터가 모두 동일한 리전에 있는 경우
  • DICOM 이미지 크기가 0.5MB인 경우

단일 요청에서 프레임 검색

retrieveStudyretrieveSeries 메서드는 단일 요청에서 DICOM 파일 여러 개를 효율적으로 반환합니다. 이러한 메서드를 사용하면 최적의 동시 요청 수를 사용하는 속도와 동일한 속도로 이미지를 검색할 수 있습니다. 다음과 같은 경우 동시 요청을 사용하는 대신 단일 요청에서 이러한 메서드를 호출할 수 있습니다.

  • 클라이언트는 전체 연구를 메모리에 저장하거나 응답을 스트림으로 파싱하여 한 번에 DICOM 인스턴스 하나를 처리할 수 있습니다.
  • 검색된 이미지의 순서를 맞춤설정할 필요가 없습니다.

웹 뷰어 성능 향상

다음 섹션에서는 웹 뷰어를 사용하는 경우 DICOM 이미지 검색에 적용됩니다.

최대 동시 요청 수 늘리기

웹 기반 뷰어를 사용하는 경우 대부분의 브라우저는 호스트당 최대 연결 수를 적용합니다. 이 숫자는 일반적으로 6입니다. 하지만 실제로는 다음과 같은 이유로 인해 최대 동시 요청 수에 제한이 없습니다.

  • 서버에서 HTTP/2를 지원하는 경우 대부분의 브라우저는 기본적으로 HTTP/2를 사용합니다.
  • HTTP/2는 모든 요청에 단일 연결을 사용합니다.

예를 들어 Cornerstone.js를 사용하여 뷰어를 빌드하는 경우 Cornerstone.js를 구성할 때 maxSimultaneousRequests를 변경하여 최대 동시 요청 수를 뷰어에 적합한 수로 조정할 수 있습니다.

웹 작업자 사용

자바스크립트는 단일 스레드 언어이므로 동시 패턴을 적용할 때 특히 주의해야 합니다. 웹 작업자를 사용하여 DICOM 이미지와 HTTP 요청을 모두 처리할 수 있습니다.

예를 들어 웹 작업자에 대한 HTTP 요청 처리를 수정하는 경우 30밀리초 요청 처리 오버헤드를 가정하여 뷰어의 FPS를 효과적으로 30FPS에서 60FPS로 2배로 향상시킬 수 있습니다.