Parallel Data Fetching

쏘뽀끼·2024년 8월 1일

Next.js

목록 보기
11/18

여러 요청을 동시에 실행하여 성능을 개선하는 방식

모든 요청을 동시에 보내고, 모든 요청이 완료될 때까지 기다린다.

이 방법은 데이터 요청이 서로 독립적일 때 유용하다.

예시: 대시보드 데이터

가정
대시보드에 필요한 데이터가 여러가지 있다.

  • 총 판매 수익

  • 최근 5개의 송장

  • 총 고객 수

    이 데이터들은 서로 독립적이기 때문에 동시에 요청할 수 있다.




1단계 : 데이터 요청

모든 데이터를 동시에 요청하려면, 'Promise.all()'을 사용한다.

const[revenue, lastestInvoices, customerCount] = await Promise.all([
fetchRevenue(),//총 판매 수익
fetchLastestInvoices(),// 최근 5개의 인보이스
fetchCustomerCount(),// 총 고객 수 
]);

이렇게 하면 각 데이터요청이 독립적으로 실행된다.




2단계: 데이터 사용

모든 데이터 요청이 완료되면, 응답을 받아서 사용할 수 있다. 요청이 동시에 이루어지므로, 전체 대기 시간은 가장 느린 요청에 의존한다.

0개의 댓글