반응형

전체 글 307

[CS 지식14.] 3tier 아키텍처란?

Overview전통적인 3tier 아키텍처는 애플리케이션을 프레젠테이션(클라이언트), 애플리케이션(비즈니스 로직), 데이터(데이터베이스) 계층으로 나누어 구성하는 고전적이면서도 여전히 강력한 설계 방식이다. 하지만 클라우드 기술과 다양한 웹 프레임워크의 발전으로 인해 오늘날에는 이들 계층 간의 구분이 명확하지 않거나, 하나로 통합되는 경우도 많다.  이번 글에서는 전통적인 3tier 아키텍처의 구성 요소와 역할을 살펴보고, 현대 웹 개발에서 이러한 구조가 어떻게 변화했는지, 웹 서버와 애플리케이션 서버의 차이점, 그리고 정적 콘텐츠와 동적 콘텐츠에 대한 이해를 통해 실전 웹 아키텍처에 대한 감각을 익혀본다.      📅 관련 글2023.01.13 - [CS 지식] - [CS 지식1.] 웹 브라우저의 동..

CS 지식 2024.06.10

[CS 지식13.] 동기 및 비동기 처리란?

Overview오늘은 프로그램의 흐름 제어에서 핵심 개념 중 하나인 동기(Synchronous)와 비동기(Asynchronous) 처리 방식에 대해 알아보자. 이 두 개념은 입출력 처리, API 호출, 파일 작업, 네트워크 요청 등 다양한 상황에서 프로그램이 작업을 어떻게 처리할지를 결정짓는 매우 중요한 기준이다.  특히 Python과 같은 현대 프로그래밍 언어에서는 async/await, Promise, Coroutine 등의 비동기 문법이 본격적으로 사용되고 있어, 이를 명확하게 이해하는 것이 실무에서도 큰 도움이 된다.    📅 관련 글2023.01.13 - [CS 지식] - [CS 지식1.] 웹 브라우저의 동작원리2023.02.23 - [CS 지식] - [CS 지식2.] DNS의 동작원리(Dom..

CS 지식 2024.06.06

Git Rebase vs Merge

OverviewGit에서 협업 시 자주 사용하는 Merge와 Rebase는 모두 브랜치 간의 변경 사항을 통합하는 역할을 하지만, 프로젝트 히스토리 관리 방식에서 큰 차이점이 있다.Merge는 여러 브랜치의 작업 내역을 하나의 공통 커밋(Merge Commit)으로 통합하며, 비선형 히스토리(non-linear history) 를 만들어 작업 흐름을 명확히 보존한다.Rebase는 한 브랜치의 커밋을 다른 브랜치의 최신 커밋 이후로 재적용(replay) 하며, 선형 히스토리(linear history) 를 유지하는 데 유용하다. 또한, 충돌 상황에서 자주 마주치는 ours와 theirs 개념은 Merge와 Rebase 상황에서 의미가 다르므로 주의가 필요하다.특히 Rebase에서는 많은 혼동을 야기할 수 ..

Terraform State Error 시 해결 방법

OverviewTerraform을 실행할 때 간혹 무한 로딩 상태로 멈추거나 apply가 진행되지 않는 경우가 있다.이러한 현상은 대부분 Terraform의 상태 파일(Terraform State) 과 실제 클라우드 리소스(GCP, AWS 등)의 상태가 불일치할 때 발생한다.이 글에서는 디버깅을 위한 `TF_LOG` 환경변수 활용 방법, 문제 원인 식별을 위한 로그 분석, 그리고 terraform state rm 명령어를 통해 상태 파일에서 수동으로 삭제된 리소스를 제거하는 해결 절차를 설명한다.      Terraform State Error Terraform 실행시에 State 상태에서 멈춰서 동작이 하지 않을때가 있다. Terraform은 `TF_LOG` 환경 변수를 통해 로깅을 제공한다. 따라서 ..

Trouble Shooting 2024.05.29

Proxmox란?

OverviewProxmox VE는 KVM(커널 기반 가상 머신)과 LXC(리눅스 컨테이너)를 통합 한 가상화 플랫폼으로, 웹 기반 관리 인터페이스, 고가용성 클러스터, Ceph 스토리지 연동 등의 기능을 제공한다. 이 문서에서는 Proxmox VE의 개념과 주요 기능, 설치 및 네트워크 구성, 클러스터 구축 및 Ceph RBD 연동, 그리고 웹 UI 접속 방법 에 대해 정리했다.   📅 관련 글2022.08.08 - [Understand different OS Concepts/Virtualization] - KVM과 QEMU란? (Linux 가상화 솔루션)2022.08.08 - [Understand different OS Concepts/Virtualization] - Libvirt란? (Linux ..

Xen Orchestra란?

OverviewXO(Xen Orchestra)는 XenServer 및 XCP-ng 하이퍼바이저 환경을 관리하도록 설계된 웹 기반 관리 도구이다. VM 관리, 백업 프로세스, 리소스 모니터링 등의 작업을 단순화한다. 주요 구성요소를 자세히 살펴보겠다.   📅 관련 글2022.08.08 - [Understand different OS Concepts/Virtualization] - KVM과 QEMU란? (Linux 가상화 솔루션)2022.08.08 - [Understand different OS Concepts/Virtualization] - Libvirt란? (Linux 가상화 관리 도구)2023.03.17 - [CS 지식] - [CS 지식5.] 가상화란?2024.05.13 - [Understand di..

VSCode Vim Extension 사용 가이드

Overview이 글에서는 VSCode에서 Vim Extension을 설치하고 사용하는 방법에 대해 소개한다.Vim은 효율적인 키보드 기반의 텍스트 편집 도구로, 개발자 생산성을 높여주는 강력한 툴이다.VSCode는 Vim Extension을 통해 Vim의 핵심 기능(모달 편집, 키맵 등)을 그대로 사용할 수 있으며, 손쉽게 활성화하거나 비활성화할 수 있는 설정을 제공한다.      📅 관련 글2024.05.07 - [Linux] - Vim 개념 및 사용가이드2024.05.08 - [유용한 IT Tool] - VSCode Vim Extension 사용 가이드      VSCode Vim Extension 설치 및 활용Vim(Vi Improved)는 Vi 에디터를 기반으로 개발된 고성능 텍스트 에디터이다..

유용한 IT Tool 2024.05.17

Vim 개념 및 사용가이드

Overview이 글에서는 강력한 텍스트 에디터인 Vim에 대해 자세히 알아본다.Vim은 Vi 에디터를 기반으로 하며, 모드 기반 편집, 강력한 키보드 명령어, 유연한 플러그인 확장성, .vimrc 설정을 통한 커스터마이징 등을 통해 다양한 개발 환경에서 널리 사용된다. Vim의 모드 구조(Normal, Insert, Visual, Command-line)를 이해하고, 단축키 조합 및 플러그인 활용법,  실전에서 자주 쓰이는 `.vimrc` 설정 예시 등을 함께 소개함으로써 입문자부터 중급 사용자까지 Vim을 더욱 효율적으로 사용할 수 있도록 돕는 것이 이 글의 목적이다.     📅 관련 글2024.05.07 - [Linux] - Vim 개념 및 사용가이드2024.05.08 - [유용한 IT Tool]..

Linux 2024.05.14

DB 샤딩(Sharding): 개념 및 동작방식

Overview오늘은 데이터베이스 샤딩(Database Sharding) 개념과 작동 원리에 대해 자세히 알아보려고 한다. 샤딩은 데이터베이스의 확장성과 성능을 향상시키는 중요한 기법이며, 대규모 트래픽을 처리하는 시스템에서 필수적으로 고려되는 기술이다.         DB 샤딩(Sharding)이란?데이터베이스 샤딩은 매우 큰 데이터베이스를 샤드라고 하는 더 작고, 빠르고, 관리하기 쉬운 부분으로 분리하는 데이터베이스 파티셔닝 유형이다. 샤드라는 단어는 전체의 작은 부분을 의미한다.각 샤드는 독립적인 데이터베이스이며, 샤드가 집합적으로 전체 데이터베이스를 구성한다. 샤딩은 모놀리식 데이터베이스 설정보다 데이터 증가 및 관련 로드를 더 효과적으로 관리하는 데 도움이 되므로 확장성 솔루션으로 사용된다.  ..

Database 2024.05.10

ACM(AWS Certificate Manager) 인증서 갱신 오류 해결 방법

Overview이 글에서는 AWS Certificate Manager(ACM) 인증서 갱신 오류 발생 시 DNS 검증 방식에서 발생할 수 있는 문제를 중심으로 트러블슈팅 방법을 다룬다.AWS는 자동 갱신을 위해 DNS 방식의 검증을 활용하며, 만약 필요한 CNAME 레코드가 삭제되었거나 존재하지 않으면 인증서가 자동으로 갱신되지 않는다.이 글에서는 해당 문제의 원인 파악부터 해결을 위한 DNS 레코드 확인 및 추가 방법, 인증서 갱신까지의 전체 흐름을 살펴본다.             ACM(AWS Certificate Manager) 인증서 갱신 오류 먼저 아래의 사진을 보면, AWS Certificate Manager가 DNS 검증을 사용하여 인증서를 자동으로 갱신할 수 없다는 것이다. 만료 날짜(20..

Trouble Shooting 2024.05.07
반응형