바로 가기

대기 시간에 민감한 애플리케이션이란?

URL 복사

모든 애플리케이션 또는 환경이 고도로 분산된 경량화 워크로드 요구 사항에 맞게 설계된 것은 아닙니다. 엣지 컴퓨팅은 기존의 중앙화된 데이터센터/클라우드 외부의 사용자 또는 데이터 소스에서 또는 그 근처에서 발생하는 컴퓨팅으로, 다양한 인프라 아키텍처에 걸쳐 존재합니다. 한쪽 끝에 있는 네트워크 엣지에는 제한적인 컴퓨팅 리소스(예: 스마트폰 및 휴대용 태블릿과 같은 모바일 엣지 컴퓨팅 기기)를 가진 저렴한 휴대용 기기가 있습니다. IDC는 이를 '라이트 엣지'라고 칭합니다. 다른 쪽 끝에 있는 '헤비 엣지'는 대규모 서버와 많은 사용자(및 데이터 트랜잭션)가 있는 데이터센터/원격 사무실 구성 등을 나타냅니다.

인프라가 속한 스펙트럼에 관계없이 몇 가지 공통된 요구 사항과 기대치가 있습니다. 기본적으로 사용자와 기기는 실시간으로 트랜잭션을 수행하여 고객 기대치 및 성능 서비스 수준 계약(SLA)을 충족할 수 있어야 합니다. 즉, 해당 환경에서 가동되는 애플리케이션이 매우 구체적인 성능 벤치마크에 도달할 수 있어야 합니다. 이러한 애플리케이션을 대기 시간에 민감한 애플리케이션이라고 합니다.

대기 시간에 민감한 애플리케이션이 무엇인지 알아보기에 앞서 기본 용어를 정의해 보겠습니다.

  • 대기 시간은 이벤트가 발생한 후 해당 이벤트가 시스템에서 처리될 때까지의 시간입니다. 가장 쉽게 확인하는 방법은 A 지점에서 B 지점으로 이동하는 데 걸리는 시간을 확인하는 것입니다.
  • 대역폭(또는 네트워크 대역폭)은 주어진 시간 동안 전송할 수 있는 데이터의 양입니다. 일반적으로 초당 메가비트 또는 기가비트입니다. 주어진 시간에 전송되는 실제 데이터 양을 처리량이라고 합니다. 높은 대역폭(또는 높은 처리량)과 낮은 대기 시간은 간혹 양립할 수 없는 것으로 생각되기도 합니다. 두 가지를 동시에 달성하기가 어렵기 때문입니다.
  • 패킷은 전송되는 데이터 요소에 해당합니다.
  • 지터는 일반적으로 네트워크 통신의 일관성이 떨어지거나 간헐적으로 느려지는 대기 시간의 가변성입니다.
  • 실시간이란 정의된 특정 시간(보통 밀리초 또는 마이크로초 단위로 측정) 내에 작업이 수행됨을 나타냅니다. 실시간은 '정말 빠른 속도'라는 의미로 잘못 해석되는 경우가 많습니다. 실시간은 결정성과 더 관련이 있으며, 다른 작업이나 부하에 관계없이 주어진 시간 제약 조건 내에서 작업이 보장됨을 의미합니다. 여러 트랜잭션을 함께 수집하는 일괄 처리와 달리 실시간 처리에서는 각 트랜잭션이 개별적입니다.
  • 엣지 노드는 일반적으로 엣지 컴퓨팅이 발생할 수 있는 모든 기기 또는 서버를 나타냅니다.

대기 시간은 의도한 응답 시간과 비교하여 시스템의 실제 응답 시간을 측정하는 시간 기반 메트릭입니다. 일반적으로 네트워크, 하드웨어, 펌웨어, 운영 체제 성능에 대한 개별적인 평가와 전체 시스템에 대한 종합적인 평가가 함께 이루어집니다. 대기 시간에 민감한 애플리케이션의 경우 짧은 대기 시간은 작업이 시작된 시점과 그로 인한 응답 사이의 지연 시간이 짧다는 것을 의미하므로 좋습니다. 대기 시간이 길수록 속도가 느리고 데이터 유형에 따라 패킷이 삭제되거나 손실될 수 있기 때문에 바람직하지 않습니다. 대기 시간은 안정적이어야 합니다. 지터가 너무 많으면 평균 대기 시간이 양호해 보여도 네트워크를 신뢰할 수 없습니다.

대기 시간에 민감한 엣지 기반 애플리케이션으로는 AI 기반 자율 주행 차량이 있습니다. 차량 내 컴퓨터는 도로에 보행자나 다른 물체가 있는지 인식하고 경로 수정을 처리하는 데 걸리는 시간이 밀리초에 불과합니다. 게이트웨이 또는 데이터센터로 돌아가는 실시간 텔레메트리와 함께 모든 데이터 처리 및 인공지능이 차량 내에 포함되어야 합니다. 이는 중요한 애플리케이션입니다. 신용카드 거래나 화상 회의를 처리하는 동안 응답이 느린 경우 최종 사용자가 실망하는 데 그치겠지만, 자율 주행에서 발생하는 오류는 생사를 좌우할 수 있기 때문입니다. Institute of Electrical and Electronic Engineers(IEEE)는 대기 시간에 민감한 애플리케이션에 대한 다양한 현대적 기술의 종속성을 설명합니다.

대기 시간은 일반적으로 속도 요소로 간주되지만 전체 시스템 성능의 한 측면으로 보는 것이 더 정확합니다. 대기 시간은 이벤트가 시작된 시점과 이벤트가 완료된 시점 사이에 관찰됩니다. 그리고 이러한 시간 제한은 애플리케이션에 따라 유연할 수 있습니다. 자율 주행 차량은 시간 제한이 엄격한 분야의 한 예로, 처리가 즉각적이어야 하며 그러지 않은 경우 중대한 시스템 오류가 발생할 수 있습니다.

일부 워크로드에는 짧은 대기 시간이 필요하지 않습니다. 즉, 작업 시작 후 응답까지의 시간이 허용 가능한 범위 내에서 오래 걸릴 수 있습니다. 이러한 워크로드는 비동기식이므로 시작 후 완료까지의 시간을 관찰할 수 없거나 사용자와 관련이 없습니다. 예를 들어, 이메일과 같은 서비스에는 긴 대기 시간이 허용됩니다. 이메일을 보낸 후 받는 데 필요한 시간을 최종 사용자가 쉽게 관찰할 수 없기 때문입니다.

단일 시스템이든 상호 작용하는 여러 시스템이든 관계없이 복잡한 환경에서는 대기 시간이 미치는 영향이 누적됩니다. 작업을 순차적으로 완료해야 하는지 아니면 병렬로 완료해야 하는지 여부에 관계없이 주요 작업의 총 대기 시간은 전체 시스템의 효율성에 영향을 미칠 수 있습니다. 이 경우 속도가 주요 요인이 아니고 일관성이 핵심 메트릭일 수 있습니다. 이를 결정적 대기 시간이라고 합니다. 즉, 지정된 작업에 예상되는 대기 시간(또는 모든 작업에 대한 총 대기 시간)이 예측 가능하고 일관됨을 나타냅니다. 이는 위상 배열 레이더, 통신 장비 또는 제조 장비와 같이 여러 기기를 동기화해야 하는 경우 중요할 수 있습니다.

요약하면 대기 시간에 민감한 애플리케이션은 기능상 실시간 애플리케이션입니다. 대기 시간이 길거나 변동이 심한 경우 애플리케이션 성능에 부정적인 영향을 미치는 모든 애플리케이션이 여기에 해당할 수 있습니다. 따라서 작업이 대부분 마이크로초 단위로 측정되는 결정적 기간 내에 발생해야 합니다. 대기 시간이 짧은 애플리케이션이라고도 합니다.

대기 시간이 성능에 영향을 주지만 애플리케이션은 계속 작동하는 대기 시간에 민감한 애플리케이션과, 대기 시간이 특정 시점을 지나면 오류가 발생하는 대기 시간이 중요한 애플리케이션으로 애플리케이션을 분류하면 유용할 수 있습니다.

대기 시간은 흔히 네트워크 성능 면에서 설명되지만 대기 시간에 민감한 애플리케이션은 종종 네트워크 품질이 대기 시간의 유일한 원인이 아니라는 점을 명확히 보여줍니다. 처리 시간에 영향을 미치는 요소는 대기 시간에도 영향을 미칩니다.

가상화 및 가상 머신을 사용하면 서로 다른 가상 프로세스가 CPU 리소스와 메모리 및 스토리지와 같은 공유 리소스를 놓고 서로 경쟁합니다. 전원 관리 및 트랜잭션 처리와 같은 시스템 설정도 서로 다른 프로세스에서 리소스에 액세스하는 방법에 영향을 미칠 수 있습니다.

클라우드 컴퓨팅 환경에서도 비슷한 문제가 발생할 수 있습니다. 하드웨어 환경에 추상화 계층이 많을수록, 처리 시간을 최적화하고 코어 애플리케이션의 대기 시간을 최소화하는 방식으로 처리 및 공유 리소스를 할당하는 것이 더 어려워질 수 있습니다. Amazon Web Services(AWS)와 같은 클라우드 공급업체는 대기 시간에 민감한 애플리케이션과 대기 시간이 중요한 애플리케이션을 배포하고 최적화할 수 있습니다.

대기 시간에 민감한 애플리케이션을 처리하는 경우, 전체 운영 환경과 기본 하드웨어가 신뢰성 향상을 위한 네트워크 인프라 및 구성만큼 중요합니다.

엣지 아키텍처는 중앙 데이터센터에서 더 멀리 이동하는 하드웨어 계층을 나타내는 동심원이 있는 양파 형태로 설명되는 경우가 많습니다. 각 계층에는 고유한 아키텍처와 고려 사항이 있으며 활용 사례에 따라 서로 다른 솔루션이 필요합니다.

엣지 아키텍처의 외부 링은 고객/사용자 또는 관리 기기와 같은 데이터 생성 상호 작용에 가장 가까운 항목을 나타냅니다. 이러한 엣지는 변화하는 조건과 새로운 데이터에 민감하게 반응해야 합니다. 따라서 대기 시간에 민감한 애플리케이션이나 실시간 애플리케이션을 배포할 가능성이 가장 높습니다. 또한 공유 데이터 저장소에서 가장 먼 계층으로, 태블릿이나 사물인터넷(IoT) 기기와 같은 경량의 소규모 하드웨어가 있을 가능성이 높습니다.

이러한 맥락에서 IT 리더는 효과적인 프로세스와 정책을 개발하여 대기 시간에 민감한 애플리케이션과 전체 엣지 컴퓨팅 환경의 성능을 유지할 수 있습니다. 이를 위해서는 다음이 필요합니다.

  • 명확한 중앙집중식 개발 및 배포 파이프라인 구축
  • 소프트웨어와 하드웨어 모두에 대해 일관된 업데이트 및 관리 정책 마련
  • 모든 파이프라인에 성능 테스트 통합
  • 가능한 한 모든 위치에서 자동화
  • 엣지 전반의 일관성을 위해 표준 운영 환경 정의
  • 상호 운용성을 위해 일관된 오픈 표준과 방법론 사용

이러한 모범 사례는 산업용 IoT(IIoT), 고성능 컴퓨팅, 기타 분산형 아키텍처와 매우 유사합니다. 엣지 또는 IoT는 최종 상태가 아닌, 특정 목표를 달성하기 위한 수단입니다. 마찬가지로 대기 시간에 민감한 애플리케이션이 유용한 것은 빠를수록 좋다는 이유 때문만은 아닙니다. 이러한 애플리케이션은 빠른 데이터 처리로 강력한 고객 경험을 창출하거나, 대형 장비를 안전하고 효율적으로 관리하고, 작동 조건 변화에 대응하고, 새로운 입력값에 적응하는 데 도움이 됩니다.

운영 체제는 실제 데이터센터 및 서버 룸에서와 마찬가지로 엣지 및 클라우드 환경에서도 중요합니다. 운영 체제는 보안 및 네트워킹 구성과 같은 기타 IT 요구 사항은 물론 대기 시간에 민감한 애플리케이션에 중요한 리소스 프로비저닝 및 관리와 같은 핵심 기능을 제공합니다.

대기 시간에 민감한 애플리케이션을 사용하면 얼마나 많은 데이터를 데이터센터 또는 클라우드에서 검토해야 하는가, 아니면 로컬에서 실행하기 위해 활동을 오프로드해야 하는가 하는 문제가 남습니다. 이는 데이터의 양과 속도 사이의 균형을 맞추는 것이 핵심입니다.

로컬 처리에 대기 시간의 위험이 존재하는 경우 시스템 성능을 개선하는 데 도움이 되는 특정 툴이 있습니다. 또는 대기 시간이 미치는 영향을 줄이는 다양한 툴과 기술을 사용하여 아키텍처를 설계할 수 있습니다.

아키텍처의 대기 시간 처리

접근 방식에 따라 네트워크 내 대기 시간 요구 사항에 더 신경써야 할 수도 있습니다. 즉, 서비스를 효과적으로 실행하는 데 엣지 아키텍처가 중요합니다. 네트워크 대기 시간과 관련하여 엣지 아키텍처는 원시 데이터를 데이터센터로 보내고 처리한 후 응답을 보내는 대신 엣지 자체에서 로컬로 데이터를 처리할 수 있어야 합니다. 애플리케이션 처리를 엣지로 내보낼 수 있으므로 대기 시간이 긴 네트워크에 대한 의존도가 줄어듭니다.

Red Hat® Enterprise Linux® for Distributed Computing은 일관된 개방형 운영 환경을 통해 데이터센터, 클라우드, 엣지를 포함한 분산형 하이브리드 클라우드 아키텍처 전반에 애플리케이션 워크로드를 배포하는 엣지 최적화 기능을 제공합니다. Red Hat Enterprise Linux for Distributed Computing을 엣지 엔드포인트 및 게이트웨이에 설치하면 애플리케이션이 클라우드 또는 데이터센터의 서버에 관련 업데이트 및 데이터 인사이트를 제공하는 동안 로컬에서 데이터를 분석하고 처리할 수 있습니다. 이렇게 하면 대기 시간이 길고, 대역폭이 일관되지 않으며, 간헐적으로 연결되는 네트워크에 대한 의존도가 줄어듭니다.

시스템 대기 시간 처리

대기 시간에 민감한 환경에서는 타이밍이 중요합니다. 아키텍처가 잘 설계되었더라도 로컬 처리를 위해 고성능 시스템을 엣지에 두는 것이 여전히 나을 수 있습니다.

대기 시간에 민감한 애플리케이션에는 고도로 조정 가능한 운영 환경이 필요합니다. Red Hat Enterprise Linux for Real Time은 대기 시간에 민감한 환경을 위해 특별히 설계된 알고리즘 및 하위 시스템의 변경 사항을 구현하기 위해 제작된 특수 패키지로, 예측 가능성과 속도에 대한 요구가 일반 성능 튜닝의 범위를 넘어섭니다.

Red Hat Enterprise Linux for Real Time에는 실시간 성능 향상을 위해 주요 구성을 지원하는 하위 수준 유틸리티가 포함되어 있습니다.

  • 동시 프로그래밍 기술로 작성된 애플리케이션뿐만 아니라 하드웨어 및 메모리 구성을 최적화합니다.
  • 멀티스레드 및 멀티프로세스 애플리케이션의 실행을 제어합니다.
  • 하드웨어 시스템의 적합성을 확인합니다.
  • 캐싱 동작을 정의합니다.

더 큰 에코시스템 활용

Red Hat 에코시스템은 이 부분에서 특히 강력합니다. Red Hat Enterprise Linux for Real Time 및 Red Hat Enterprise Linux for Distributed Computing에 대해 인증된 하드웨어 구성 및 벤더가 있어, 엣지 애플리케이션이 고객별 사양에 따라 실행될 것이라고 확신할 수 있습니다.

또한 Red Hat Enterprise Linux는 쿠버네티스 컨테이너 오케스트레이션 및 배포를 위한 Red Hat® OpenShift®, 자동화를 위한 Red Hat® Ansible® Automation Platform, 프로세스 및 의사 결정 관리, 데이터 스트림, 통합, 기타 툴을 위한 Red Hat Middleware와 통합됩니다.

엣지는 인사이트와 경험을 적시에 제공하기 위한 전략입니다. Red Hat Enterprise Linux for Real Time, Red Hat Enterprise Linux for Distributed Computing, 그리고 나머지 Red Hat 포트폴리오는 이러한 전략을 구현하는 데 도움이 되는 강력한 기반이 될 수 있습니다.

추가 정보

문서

IoT 및 엣지 컴퓨팅

IoT는 물리적 기기 또는 데이터 소스에 더 가까운 위치에 컴퓨팅 성능을 필요로 합니다. 엣지 컴퓨팅은 IoT를 위한 프로세싱 및 스토리지의 로컬 소스를 제공합니다.

문서

엣지 컴퓨팅이란 무엇일까요?

엣지 컴퓨팅은 사용자 또는 데이터 소스의 물리적인 위치나 그 위치와 가까운 곳에서 컴퓨팅을 수행하는 것을 말합니다.

문서

통신을 위한 엣지 컴퓨팅

엣지 컴퓨팅은 많은 통신사들이 네트워크를 현대화하고 새로운 수익원을 모색하는 과정에서 주요 과제로 대두되었습니다.

엣지에 대한 자세한 내용

제품

새로운 애플리케이션 출시, 환경 가상화, 더욱 안전한 하이브리드 클라우드 생성 등 다양한 작업을 위한 안정적이고 검증된 기반을 제공합니다.

선택한 인프라에서 애플리케이션 출시 테스트를 완료한 통합 서비스 세트를 포함하는 엔터프라이즈 애플리케이션 플랫폼입니다.

엣지에서의 경량화 배포에 최적화된 엔터프라이즈 소프트웨어 포트폴리오입니다.

리소스