Skip to main content
QUICK REVIEW

[논문 리뷰] Let's Trace It: Fine-Grained Serverless Benchmarking using Synchronous and Asynchronous Orchestrated Applications

Joel Scheuner, Simon Eismann|arXiv (Cornell University)|2022. 05. 16.
Cloud Computing and Resource Management인용 수 11
한 줄 요약

이 논문은 분산 추적을 통해 종단 간 성능 분석을 가능하게 하는 개방형으로 세분화된 서버리스 벤치마킹 툴세트인 ServiBench를 소개한다. 이는 동기 및 이방식으로 조율된 애플리케이션을 사용한다. 연구 결과, 서버리스 워크로드의 종단 간 지연 시간은 종종 기능 계산보다 외부 서비스 호출, 조율 또는 트리거 조율에 의해 지배되며, 이는 성능 최적화를 위한 실질적인 통찰을 제공한다.

ABSTRACT

Making serverless computing widely applicable requires detailed performance understanding. Although contemporary benchmarking approaches exist, they report only coarse results, do not apply distributed tracing, do not consider asynchronous applications, and provide limited capabilities for (root cause) analysis. Addressing this gap, we design and implement ServiBench, a serverless benchmarking suite. ServiBench (i) leverages synchronous and asynchronous serverless applications representative of production usage, (ii) extrapolates cloud-provider data to generate realistic workloads, (iii) conducts comprehensive, end-to-end experiments to capture application-level performance, (iv) analyzes results using a novel approach based on (distributed) serverless tracing, and (v) supports comprehensively serverless performance analysis. With ServiBench, we conduct comprehensive experiments on AWS, covering five common performance factors: median latency, cold starts, tail latency, scalability, and dynamic workloads. We find that the median end-to-end latency of serverless applications is often dominated not by function computation but by external service calls, orchestration, or trigger-based coordination. We release collected experimental data under FAIR principles and ServiBench as a tested, extensible open-source tool.

연구 동기 및 목표

  • 동기 및 이방식 패턴을 모두 지원하는 애플리케이션 수준의 실제 환경을 반영한 서버리스 벤치마킹의 부족을 해결하기 위해.
  • 종단 간 지연 시간 분석을 위한 분산 추적을 활용한 포괄적이고 재현 가능한 성능 평가를 가능하게 하기 위해.
  • 연구자와 실무자들이 서버리스 플랫폼 행동을 분석하고 비교할 수 있도록 FAIR 준수 기반의 개방형 도구세트와 데이터셋을 제공하기 위해.
  • 기능 실행 시간을 초월해 실제 서버리스 애플리케이션의 지연 시간 원인을 규명하고 정량화하기 위해.

제안 방법

  • ServiBench는 HTTP 트리거, 이벤트 기반 워크플로우, 메시지 큐 통합을 포함한 다양한 조율 패턴을 반영한 10개의 실제 오픈소스 서버리스 애플리케이션을 활용한다.
  • 메모리 대 CPU 비율 및 호출 패턴과 같은 클라우드 제공업체 메트릭을 외삽하여 생산 환경 유사 조건을 시뮬레이션함으로써 현실적인 워크로드를 생성한다.
  • 프레임워크는 기능과 외부 서비스 간의 종단 간 지연 시간을 캡처하기 위해 분산 추적을 통합하여 성능 병목 현상을 투명하게 분석할 수 있도록 한다.
  • 저 커버리지의 Azure Functions 추적을 향상시키기 위해 추적 업스케일러를 사용하여 지연 시간 측정의 정밀도를 향상시킨다.
  • 자동화된 배포, 로드 생성, 메트릭 수집 및 추적 분석을 통해 실험의 완전한 재현 가능성을 확보한다.
  • 조율, 외부 서비스, 기능 실행의 기여도를 분리하는 새로운 지연 시간 분해 기법을 사용하여 결과를 분석한다.

실험 결과

연구 질문

  • RQ1실제 서버리스 애플리케이션에서 종단 간 지연 시간의 주요 기여 요소는 무엇이며, 다양한 조율 패턴 간에 어떻게 다를까?
  • RQ2순수한 기능 계산에 비해 외부 서비스 호출과 조율 로직은 지연 시간에 얼마나 기여하는가?
  • RQ3AWS에서 다양한 서버리스 애플리케이션 아키텍처 간에 콜드 스타트, 尾지연 시간, 확장성 등의 성능 특성이 어떻게 다를까?
  • RQ4이방식 워크플로우를 가진 서버리스 시스템에서 분산 추적은 성능 저하의 근본 원인을 효과적으로 특정할 수 있는가?
  • RQ5서버리스 컴퓨팅에서 재현 가능하고 FAIR 준수이며 확장 가능한 성능 분석을 지원하기 위해 벤치마킹 도구는 어떻게 설계되어야 하는가?

주요 결과

  • 서버리스 애플리케이션의 중앙값 종단 간 지연 시간은 종종 기능 자체의 실행 시간보다 외부 서비스 호출, 조율 로직 또는 트리거 기반 조율에 의해 지배된다.
  • 이방식 워크플로우는 이벤트 큐잉과 기능 간 조율로 인해 상당한 지연 시간 오버헤드를 유발하며, 특히 다단계 처리 파이프라인에서 두드러진다.
  • 콜드 스타트 현상은 특히 희귀하게 호출되거나 고속도의 버스트 워크로드를 가진 애플리케이션에서 尾지연 시간의 주요 요인로 남아 있다.
  • 서버리스 애플리케이션의 성능은 외부 서비스 선택과 통합 패턴에 매우 민감하며, 일부 서비스는 비례하지 않는 지연 시간을 유발할 수 있다.
  • 추적 기반 분석 결과, API 게이트웨이 또는 메시지 큐와 같은 조율 계층이 복잡한 워크플로우에서 총 지연 시간의 최대 40%를 기여할 수 있음이 드러났다.
  • 본 연구는 기존의 마이크로벤치마킹이 이벤트 기반 및 분산 서버리스 아키텍처에서 실제 성능 특성을 포착하지 못함을 입증했다.

더 나은 연구,지금 바로 시작하세요

논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.

카드 등록 없음 · 무료 플랜 제공

이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.