캔버스 앱 실행 단계, 데이터 호출 흐름 및 성능 모니터링 이해

사용자가 캔버스 앱을 열면 다음 여러 실행 단계를 거쳐 사용자 인터페이스를 표시합니다. 앱이 로드되는 동안 SharePoint, Microsoft Dataverse, SQL Server(온-프레미스), Azure SQL Database(온라인), Excel 및 Oracle과 같은 다른 data sources—에 연결됩니다.

이 문서에서는 이러한 다양한 실행 단계와 앱이 데이터 원본에 연결하는 방법, 성능을 모니터링하는 데 사용할 수 있는 도구에 대해 알아봅니다.

캔버스 앱의 실행 단계

캔버스 앱은 사용자에게 인터페이스를 표시하기 전에 다음 실행 단계를 거칩니다.

  1. 사용자 인증 : 앱에 필요한 모든 연결에 대한 자격 증명으로 로그인하라는 메시지를 처음으로 사용자에게 표시합니다. 그 사용자가 앱을 다시 열면 조직의 보안 정책에 따라 해당 사용자에게 다시 메시지가 표시될 수 있습니다.

  2. 메타데이터 가져오기: 앱이 실행되는 Power Apps 플랫폼의 버전 및 데이터를 검색해야 하는 소스와 같은 메타데이터를 검색합니다.

  3. 앱 초기화: OnStart 속성에 지정된 모든 작업을 수행합니다.

  4. 화면 렌더링: 앱에 데이터로 채우는 컨트롤을 사용하여 첫 번째 화면을 렌더링합니다. 사용자가 다른 화면을 열면 앱이 동일한 프로세스를 사용하여 렌더링합니다.

캔버스 앱의 데이터 호출 흐름

캔버스 앱의 데이터 호출은 OData 프로토콜을 통해 커넥터를 사용하여 테이블 형식 데이터 원본으로 데이터를 보냅니다. OData 요청은 백엔드 레이어로 흐름을 요청하여 대상 데이터 원본에 연결하고 클라이언트에 대한 데이터를 검색하거나 데이터를 데이터 원본에 커밋합니다. API를 활성화하는 작업 기반 커넥터는 동일한 방식으로 작동합니다.

캔버스 앱에서 OData 및 API 요청이 이동하는 방식을 이해하면 캔버스 앱 성능과 백 엔드 데이터 원본을 최적화할 수 있습니다.

이 섹션에서는 서로 다른 데이터 원본 유형을 사용하여 캔버스 앱에서 데이터 호출을 수행하는 방식에 대해 알아봅니다.

온라인 데이터 원본을 사용한 데이터 호출 흐름

다음 다이어그램은 캔버스 앱(왼쪽)의 일반적인 데이터 요청이 서버 쪽 레이어를 이동하고 대상 데이터 원본(오른쪽)에 연결한 다음 데이터를 클라이언트로 반환하는 방법을 보여줍니다.

Dataverse 용 커넥터를 제외한 모든 커넥터에 대한 일반적인 데이터 호출 흐름.

앞선 다이어그램의 각 레이어는 빠르게 수행되거나 요청을 처리하는 동안 약간의 오버헤드가 있을 수 있습니다. 많은 앱에서 두 가지 특정 지점이 일반적으로 눈에 띄는 오버헤드를 나타낼 수 있습니다.

  • 백 엔드 데이터 원본: 요청을 처리하는 동안 나타냅니다.

  • 클라이언트: 요청을 보내는 동안— 또는 힙 메모리에서 수신된 데이터를 조작하고 연관된 JavaScript 함수를 실행하여 화면에 표시할 데이터를 처리하는 동안 오버헤드를 나타냅니다.

온-프레미스 데이터 게이트웨이를 사용한 데이터 호출 흐름

캔버스 앱이 SQL 서버와 같은 온-프레미스 데이터 원본에 연결되면 온 프레미스 데이터 게이트웨이라는 다른 레이어가 필요합니다. 이 게이트웨이는 온-프레미스 데이터 원본에 액세스하는 데 필수입니다. OData 프로토콜 요청을 SQL 데이터 조작 언어(DML) 문으로 변환하는 작업을 담당합니다.

다음 다이어그램은 온-프레미스 데이터 게이트웨이를 배치하고 데이터 요청을 처리하는 위치와 방법을 보여줍니다.

온-프레미스 데이터 게이트웨이에 대한 데이터 호출 흐름.

앱이 데이터 원본 온-프레미스를 사용하는 경우 데이터 게이트웨이의 위치와 사양도 데이터 호출 성능에 영향을 미칩니다.

Microsoft Dataverse와 데이터 호출 흐름

Microsoft Dataverse를 데이터 원본으로 사용하는 경우, 데이터 요청은 환경 인스턴스로 직접 이동하며—Azure API Management를 통하지 않습니다. 이 때문에 데이터 호출의 성능은 나머지 데이터 원본에 비해 빠릅니다. 새 캔버스 앱을 만들 때 앱은 기본적으로 Microsoft Dataverse에 연결되어 있습니다.

Microsoft Dataverse와 데이터 호출 흐름.

데이터 호출이 이동하는 방식에 대한 이 높은 수준의 개념을 이해하면 앱 성능 검토에 대한 세부 정보를 얻을 수 있습니다. 요약하면, 성능 오버헤드는 클라이언트, API Management, 커넥터, 온 프레미스 데이터 게이트웨이 또는 백엔드 데이터 원본의—모든 레이어에서 발생할 수 있습니다.

성능 측정

Power Apps 모니터링 도구

브라우저의 개발자 도구를 사용하여 성능을 확인할 수 있지만 Power Apps는 모니터링 도구의 호출 집합을 Power Apps인 호출로만 하위 집합화합니다.

Power Apps 모니터링 도구는 요청이 전송되고 서버에서 응답이 오는 경우 데이터 원본에 실제로 전송되는 내용과 타임스탬프를 추적하는 데 도움이 될 수 있습니다.

이 문서 모니터링을 통해 캔버스 앱 디버깅에서 모니터링 도구에 대해 자세히 알아볼 수 있습니다.

모니터링 도구.

클라이언트의 메모리 압력 측정

메모리 소비량을 그래픽으로 보려면 브라우저용 개발자 도구를 사용하여 메모리를 프로파일링할 수 있습니다. 이를 통해 힙 크기, 문서, 노드 및 수신기를 시각화합니다. Microsoft Edge(Chromium) 개발자 도구 개요에 설명된 대로 브라우저를 사용하여 앱의 성능을 프로파일링합니다. JS 힙의 메모리 임계값을 초과하는 시나리오를 확인합니다. 추가 정보: 메모리 문제 해결

메모리 사용량 그래프.

다음 단계

작은 데이터 페이로드

참조 항목

Power Apps 문제 해결

참고

귀사의 설명서 언어 기본 설정에 대해 말씀해 주시겠습니까? 간단한 설문 조사에 응해주세요. (이 설문 조사는 영어로 되어 있습니다.)

이 설문 조사는 약 7분 정도 걸립니다. 개인 데이터는 수집되지 않습니다(개인정보처리방침).