개발을 하다보면 자주 접하게 되는 단어이자 필수가 되어버린 VM과 Container 이 둘은 어떠한 의미를 가지고 있는지 그리고 어떻게 차이가 있는지에 대하여 한번 이야기 해보고자 합니다. VM(Virtual Machine)VM 즉, 가상화 머신이라고 불리는 기술은 하나의 컴퓨터 자원을 소프트웨어 기술을 통해 나누는 기술을 의미합니다. VM을 만들고자 하면 각 가상화마다 OS가 필요로 하게 되고, 생성된 VM에 어플리케이션과 환경을 설정하게 됩니다. 이렇게 만들어진 가상화 머신을 이미지화 하여 원하는 만큼 복제를 할 수 있다는 장점을 가지고 있습니다. 이러한 가상화 머신이 가진 장점으로 인해 오랜 시간동안 많은 개발자들의 관심을 받을 수 있었고 지금도 여러 회사에서 해당 기술을 통해 개발을 진행하고 있..
3티어 레이어는 개발에서도 자주 사용되는 용어로 개발자에게도 많이 익숙한 용어 입니다. 이러한 3티어 레이어라는 것이 실제로 인프라에서는 어떻게 접목이 되고 있는지 알아보도록 하겠습니다. 3티어 레이어3티어 레이어는 말그대로 레이어를 3계층으로 나누어 관리를 하는 방식을 의미 합니다.여기서 의미 하는 각 레이어에 대한 설명은 아래와 같습니다. #Web Layer 는 기본적으로 정적 페이지를 제공해주는 서버를 의미합니다. 현 시대에서는 이러한 정적과 동적에 대한 의미가 많이 퇴색이 되고 있는 현황에 있고 이를 두고도 많은 아키텍처가 생겼기도 합니다. #Service Layer 흔히 알고 있는 Application Server들이 존재하는 곳 들로 여러 API를 제공함으로써 여러 GUI에서 해당 기능을 ..
이제는 개발자로써 프로그래밍만을 하는 것에서 끝나지 않고 지속적인 운영관리에 대한 부분도 역할을 맡고 있습니다. 이러한 기술적 변화는 기존 시스템 개발자와 소프트웨어 개발자 간의 간극이 더 커졌다고 생각하고 있습니다. 그렇다면 전반적인 아키첵터와 각 인프라에 대한 기초 내용들을 함께 보면서 어떻게 달라지고 현 상황은 어떻게 되는지 이야기 해보도록 하겠습니다.소프트웨어 생명주기와 역할소프트웨어는 기본적으로 생명주기를 가지고 있습니다. 생명주기라는 것은 어찌보면 소프트개발에서 필수적인 영역이라고 생각하는데요. 필수적이라고 보는 이유는 알게 모르게 우리가 이러한 방식으로 개발을 하고 있기도 하고 또 더욱 체계적인 개발을 하게 만드는데 이해를 해야 하는 영역이 제대로 구분이 되어져 있다고 생각합니다. 그럼 각 ..
RedirectionNext.js에서는 다양한 형태의 Redirect 전략을 제공하고 있습니다. 어떤 방식으로 Redirect를 사용할 수 있는지 알아보도록 하겠습니다. redirect functionredirect는 서버에서 사용하는 메서드로 다른 URL로 이동하는 것을 허용하고 있습니다. 'use server' import { redirect } from 'next/navigation'import { revalidatePath } from 'next/cache' export async function createPost(id: string) { try { // Call database } catch (error) { // Handle errors } revalidatePath('..
용어용어개념기타TreeNext.js의 하이라키 폴더 구조를 뜻함. 폴더가 기본적으로 트리구조를 가짐./dashboard/settings/ (Root segment)dashboard (Segment)settings (Leaf segment)SubTree폴더를 구성하는 트리의 일부분.Root트리나 서브트리의 최상위 부모 폴더.Leaf트리나 서브트리에서 자식 폴더가 없는 폴더. URL Segment URL에서 / 사이에 구분되어져 있는 값 URL Path Domain 이후의 경로 Route Segment 라우트 세그먼트는 폴더 구조에 따라 URL Segment를 구성 ❓App Router 와 Pages Router두 라우터는 하나의 프로젝트에서 동시에 사용이 가능하지만, 겹치는 라우터가 존재하는 경우 App..
Hydration과 Dehydration은 React와 같은 프론트엔드 프레임워크에서 중요한 개념으로, 서버 사이드 렌더링(SSR) 및 클라이언트 사이드 렌더링(CSR)에서 자주 사용됩니다. 이 두 개념을 이해하면 React 애플리케이션의 초기 로딩 성능과 사용자 경험을 개선하는 데 도움이 됩니다. Hydration (수화)Hydration은 서버에서 렌더링된 HTML을 클라이언트(브라우저)에서 React가 다시 활성화하는 과정입니다. 서버 사이드 렌더링(SSR)을 사용하면 초기 HTML이 서버에서 생성되어 클라이언트로 전송되는데, 이 HTML은 React 컴포넌트가 아닌 단순한 HTML입니다. 클라이언트가 이 HTML을 받으면, React는 이 HTML을 '재사용'하고, 이를 기반으로 초기 렌더링을 수..