어떤 기능인가요?
웹 앱 빌드 시간에서 대학 상세 페이지 정적 생성(SSG)이 차지하는 비중을 줄이는 개선 작업입니다.
최근 GitHub Actions Web - Build 기준으로 전체 build job은 약 40 ~ 48초, 실제 Build web application 단계는 약 25~27초 정도 걸리고 있습니다. 현재 절대 시간이 아주 크지는 않지만, 대학 카탈로그가 늘어날수록 정적 생성 대상이 선형으로 증가하는 구조라 장기적으로 빌드 시간이 계속 느려질 가능성이 있습니다.
확인한 내용
- 최근 CI
Web - Build job 소요 시간
26803027151: Web Build job 42초, Build web application 27초
26802563215: Web Build job 48초, Build web application 25초
26802151654: Web Build job 46초, Build web application 25초
26800113782: Web Build job 40초, Build web application 26초
- Next build 로그 기준
Generating static pages using 3 workers (188/188) in 5.6s
● /university/[homeUniversity]/[id]가 generateStaticParams 기반 SSG로 빌드됨
- 로그상 대학 상세 경로가
/university/inha/2166, /university/inha/2167, /university/inha/2168, +139 more paths로 표시되어 약 142개 대학 상세 페이지가 빌드 타임에 미리 생성됨
- 관련 코드
apps/web/src/app/university/[homeUniversity]/[id]/page.tsx
revalidate = false
generateStaticParams()에서 getAllUniversities() 결과를 순회하며 모든 homeUniversity + id 조합을 정적 경로로 생성함
문제점
- 대학 데이터가 늘어날수록
generateStaticParams() 대상 경로가 같이 늘어납니다.
- 대학 상세 페이지가 빌드 시점 API 응답에 의존하므로, API 지연/실패가 빌드 안정성에도 영향을 줄 수 있습니다.
- SEO/GEO를 위해 상세 페이지 노출은 유지해야 하지만, 모든 대학 상세를 매 빌드마다 정적으로 생성하는 방식이 최선인지 재검토가 필요합니다.
작업 상세 내용
완료 기준
- 빌드 로그에서 대학 상세 정적 생성 경로 수와 시간이 명확히 줄어든다.
- 대학 상세 페이지의 SEO 메타데이터와 접근성은 유지된다.
- GitHub Actions 기준 Web Build 시간이 개선 전후로 비교 가능하게 기록된다.
참고할만한 자료(선택)
- CI run:
26803027151
- Web Build job:
79013870383
- 해당 로그 발췌
Generating static pages using 3 workers (188/188) in 5.6s
● /university/[homeUniversity]/[id]
/university/inha/2166, /university/inha/2167, /university/inha/2168, +139 more paths
어떤 기능인가요?
웹 앱 빌드 시간에서 대학 상세 페이지 정적 생성(SSG)이 차지하는 비중을 줄이는 개선 작업입니다.
최근 GitHub Actions
Web - Build기준으로 전체 build job은 약 40 ~ 48초, 실제Build web application단계는 약 25~27초 정도 걸리고 있습니다. 현재 절대 시간이 아주 크지는 않지만, 대학 카탈로그가 늘어날수록 정적 생성 대상이 선형으로 증가하는 구조라 장기적으로 빌드 시간이 계속 느려질 가능성이 있습니다.확인한 내용
Web - Buildjob 소요 시간26803027151: Web Build job 42초,Build web application27초26802563215: Web Build job 48초,Build web application25초26802151654: Web Build job 46초,Build web application25초26800113782: Web Build job 40초,Build web application26초Generating static pages using 3 workers (188/188) in 5.6s● /university/[homeUniversity]/[id]가generateStaticParams기반 SSG로 빌드됨/university/inha/2166,/university/inha/2167,/university/inha/2168,+139 more paths로 표시되어 약 142개 대학 상세 페이지가 빌드 타임에 미리 생성됨apps/web/src/app/university/[homeUniversity]/[id]/page.tsxrevalidate = falsegenerateStaticParams()에서getAllUniversities()결과를 순회하며 모든homeUniversity + id조합을 정적 경로로 생성함문제점
generateStaticParams()대상 경로가 같이 늘어납니다.작업 상세 내용
/university/[homeUniversity]/[id]를 전량 SSG로 유지할지, ISR/온디맨드 생성/부분 pre-render 방식으로 바꿀지 검토한다.generateStaticParams로 pre-rendergenerateStaticParams제거 또는 축소 후 ISR로 전환Web - Build시간과Generating static pages시간을 비교한다.완료 기준
참고할만한 자료(선택)
2680302715179013870383Generating static pages using 3 workers (188/188) in 5.6s● /university/[homeUniversity]/[id]/university/inha/2166,/university/inha/2167,/university/inha/2168,+139 more paths