또 다른 문제가 발생!
Next.JS는 서버 npm run dev 하면서 실행이 됩니다 그런데.. 실행되면서 자동으로 무언가를 실행하거나 요청을 하는 기능이 제공되지 않습니다 그렇다면 어떻게 하느냐?.. 흉내를 낼 수 있습니다
서버가 실행되고 이제 클라이언트가 누구든 최초 접속할때 서버에서 공공데이터 API 서버로 요청을 보낼 수 있도록
src 디렉토리에 server이라는 서버 모듈 폴더를 생성
cache.ts : 캐시의 인터페이스를 관리하도록
init.ts : 자동시작 흉내를 내는 파일
// src/server/init.ts
import { initializeCache } from "./initializeCache";
import { collectionBinsCache } from "./cache";
initializeCache()
.then(() => {
console.log("서버 시작 시 캐시 초기화 완료:", Object.keys(collectionBinsCache));
})
.catch((error) => {
console.error("캐시 초기화 실패:", error);
});
initializeCache.ts : 요청을 보내고 캐싱하는 파일
사실 하나의 파일에서 이 모든 처리를 할 수 있도록 해도 상관은 없으나 나중에 최초 서버를 실행할 때 미리 준비되어야 하는 데이터 존재한다면 더 추가하기 쉽게끔 역할을 분리하여 관리하는 게 좋을 것 같습니다
결과는 아주 완벽하게 잘 불러오고 있습니다 다시 요청해도 외부 API 서버에 다시 요청해서 받아오는 게 아닌 최초 받아왔던 데이터를 캐싱하고 캐싱된 데이터를 불러오는 아주 효율적이고 최적화된 방식으로 변경됐습니다!
👍
'TROUBLESHOOTING' 카테고리의 다른 글
네트워크 방화벽으로인한 라우터(AP) 통신불가 이슈 -OPENWRT (3) | 2025.07.30 |
---|---|
HeyHome API Auth 요청 401 ERROR 발생 이슈 (0) | 2025.07.09 |
Next.JS - 외부 REST API 부하 문제에 부딪히다 (2) | 2025.03.16 |
Rhymix 기반 모듈 "Variable menu_item_srl for column parent_srl is not set" 오류 (0) | 2025.02.09 |
AWS MFA 로그인 인증 불가 기존 인증 디바이스를 변경하였거나 분실했을경우 (2) | 2025.02.04 |