react로 뷰단 만드는데,
CSR이라 seo 안걸리는거랑 첫 페이지 오래 뜨는거 좀 거슬려서 알아봤는데
nextjs는 페이지/컴포넌트 별로 ssr, csr 등 렌더링 패턴 다르게 적용 가능하다고 하더라고.
그래서 첫페이지 ssr 쓰면 좋겠네? 했더니 nextjs가 백엔드더라?
만약에 nextjs랑 스프링 쓰려면, nextjs까지 요청 받고, nextjs에서 다시 스프링으로 요청해서 json 받아온걸 ssr로 만들어서 뿌리는 식으로 만들어야 하나?
그럼 프론트 서버에 노드 깔아야 하니까 별로같은데
걍 react + 스프링으로 만들면 첫 접속 오래뜨는건 번들사이즈 최대한 줄인다고 쳐도,
seo문제는 어떻게 해결함?
찾아보니 react-helmet으로 메타태그 따로 정의하고 react-snap으로 빌드할 떄 ssr처럼 만드는 방식이 있네?
next가 왜 백엔드야?
nextjs 앱 대충 검색해봤는데 postgres, firebase 물려있던데 아닌가?
뭘 보고 백엔드라고 생각한 거임?
아닌가보네
If you're using Next.js for static site generation (SSG), then yes, you can pre-generate all your pages at build time into HTML/CSS/JS files and host them on any static file server, and you wouldn't need Node.js on that server.
However, if you're using Next.js for server-side rendering (SSR) or API routes, you would need Node.js on your server. That's because SSR and API routes involve running JavaScript code on the server at request time, which requires Node.js.
Additionally, if you're using Next.js's incremental static regeneration (ISR) feature, which allows you to update static content after the build process, you would also need a Node.js environment on the server to handle that.
In other words, whether or not you need Node.js on your server depends on which features of Next.js you're using.
SSR 기능 쓰려고 nextjs 쓰는거면 배포서버에 nodejs 깔려있어야 한다는디.. 대충 남이 만든 todo app 보니까 firebase랑 postgres랑도 통신하는거 같은데 이정도면 백엔드 아닌감?
서버가 있긴한데 원래 용도는 SSR임, 보통 백엔드라고 부르는 서버는 따로 달지
그말은 즉 본문 내용처럼 프론트를 nextjs로 쓰면서 nextjs에서 요청온걸 스프링 백엔드 서버로 보내는 패턴도 쓴단 말이지?
넹
그렇구나
근데 react-helmet + react-snap으로 야매 ssr로 만드는게 더 편할거 같은데 아무래도 규모 좀 크고 프론트 신경쓰는 기업들은 nextjs로 마이그레이션 했겠지?
vercel 회사자체가 규모도 좀 있고, 안정적으로 프로젝트 관리하고 있기도 하고, 리액트 팀에서도 은근 next.js 권장하는 분위기임
기왕한거 nextjs까지 해야겠네. ㄱㅅ
nextjs 조아요호호
ㅇㅇ BFF(Backend For Frontend)라고 할걸? 님 말대로 스프링은 api 서버 역할만 하고 next js 는 ssr이나 여타 기능들 담당하는 방식 아니면 next js를 서버로 만들어도 될거임
사내 인프라 화면단을 ejb랑 nextjs로 하고 해당 화면에 뿌릴 데이터는 해당 인프라 구축하는 서비스에서 스프링으로 API 서버 만듬
예전에는 백엔드가 클라한테 프론트 파일 딜리버리 해줫었는데, 요즘엔 API서버+프론트서버+프론트엔드 이렇게 구성된 경우가 꽤 있음. API서버는 DB처리하기도 바쁘니까, 왠만한 static files와 view 부분에 대한 딜리버리는 프론트 서버에서 제공해라 이거지. 그리고 프론트 서버에는 프록시가 있어서 /api/ 이후로 들어오는건 api 서버로 보내서 받아주는 경우가 있음. nextjs와 nuxtjs가 요즘 그런 추세임 그래서 vite..어쩌고 서버인가를 탑재함 ㅇㅇ