안티패턴: 느린 백엔드 허용

Apigee X 문서입니다.
Apigee Edge 문서 보기

백엔드 시스템은 API 프록시가 액세스하는 서비스를 실행합니다. 즉, API와 API 관리 프록시 레이어가 존재하는 근본적인 이유입니다.

Apigee 플랫폼을 통해 라우팅되는 모든 API 요청은 백엔드에 도달하기 전에 일반적인 경로를 통과합니다.

  • 요청은 클라이언트에서 발생하는데 이는 브라우저에서 앱에 이르기까지 무엇이든 가능합니다.
  • 그런 다음 Apigee 게이트웨이에서 요청을 수신합니다.
  • 게이트웨이 내에서 요청이 처리됩니다. 이 프로세스의 일환으로 요청이 여러 분산 구성요소로 전달됩니다.
  • 그런 다음 게이트웨이가 요청에 응답하는 백엔드로 요청을 라우팅합니다.
  • 백엔드의 응답은 Apigee 게이트웨이를 통해 정확히 역방향 경로를 거쳐 클라이언트로 갑니다.

미정

실제로 Apigee를 통해 라우팅되는 API 요청의 성능은 Apigee와 백엔드 시스템에 따라 달라집니다. 이 안티패턴에서는 백엔드 시스템의 성능이 저하되어 API 요청에 미치는 영향을 중점적으로 살펴봅니다.

안티패턴

문제가 있는 백엔드의 사례를 살펴보겠습니다. 다음과 같은 가능성이 있습니다.

  • 크기가 충분하지 않은 백엔드
  • 느린 백엔드
  • 크기가 충분하지 않은 백엔드

    API를 통해 이러한 백엔드 시스템에 서비스를 노출하는 것의 문제는 많은 최종 사용자가 액세스할 수 있다는 점입니다. 비즈니스 관점에서 이것은 가치 있는 도전과제이지만 다뤄져야 할 부분입니다.

    많은 경우 백엔드 시스템은 서비스에서 이러한 추가 수요에 대비할 수 없고 따라서 축소되거나 효율적인 응답을 위해 조정되지 않은 경우가 많습니다.

    '크기가 충분하지 않은' 백엔드의 문제는 API 요청이 급증하는 경우 백엔드 시스템의 CPU, 로드, 메모리와 같은 리소스에 부담을 줄 수 있다는 점입니다. 이는 결국 API 요청이 실패하는 원인이 됩니다.

    느린 백엔드

    백엔드가 잘못 조정될 경우 들어오는 모든 요청에 대한 응답이 매우 느려지므로 지연 시간 증가, 조기 시간 초과, 고객 경험 저하가 발생할 수 있습니다.

    Apigee 플랫폼은 느린 백엔드를 우회하고 관리할 수 있는 몇 가지 조정 옵션을 제공합니다. 하지만 이러한 옵션에는 제한사항이 있습니다.

    영향

    • 크기가 충분하지 않은 백엔드의 경우 트래픽이 증가하면 요청이 실패할 수 있습니다.
    • 백엔드가 느린 경우 요청 지연 시간이 증가합니다.

    권장사항

    • 캐싱을 사용해 응답을 저장하여 API 응답 시간을 개선하고 백엔드 서버의 부하를 줄입니다.
    • 느린 백엔드 서버의 근본적인 문제를 해결합니다.

    추가 자료