AubE Log : 오브 로그

일상 생활에 대한 이야기, 프로그램 개발에 대한 기록 등 일련의 기억들을 다시 되짚어 본다.

Dev 2

웹 애플리케이션의 시스템 성능 개선과 트러블슈팅

웹 애플리케이션의 시스템 성능 개선과 트러블슈팅을 위한 일반적인 방법은 다음과 같다.1. 성능 개선 방안a) 캐싱(Caching)데이터베이스 캐싱: 자주 조회되는 데이터를 캐시(예: Redis, Memcached)에 저장해 DB 부하를 줄인다.컨텐츠 캐싱: Cloudflare 같은 CDN 서비스를 통해 이미지, JS, CSS 파일 등 정적 파일을 캐싱하여 빠르게 제공한다.페이지 캐싱: 사용자 세션에 따라 달라지지 않는 페이지는 캐시하여 렌더링 시간을 줄인다.b) 데이터베이스 최적화인덱스 최적화: 자주 사용하는 쿼리의 칼럼에 적절히 인덱스를 설정하여 조회 성능을 높인다.쿼리 최적화: 쿼리를 단순화하고 복잡한 연산을 줄여 쿼리 실행 시간을 줄인다.데이터 정규화 및 비정규화: 정규화로 데이터 중복을 최소화하고..

Dev 2024.11.08

헤드리스 아키텍처 Headless

"헤드리스"라는 단어는 본래의 의미에서 "머리(Head)가 없는" 것을 가리킨다. 헤드리스 아키텍처에서 이 용어를 사용한 이유는, 전통적인 소프트웨어 아키텍처와 비교할 때 프론트엔드(사용자 인터페이스, 즉 '머리'에 해당하는 부분)가 백엔드와 분리되어 독립적으로 동작하기 때문이다.이유 및 배경:전통적인 시스템 구조:과거의 전통적인 커머스 시스템이나 CMS(콘텐츠 관리 시스템)에서는 프론트엔드(웹페이지 UI)와 백엔드(서버, 데이터베이스, 비즈니스 로직)가 긴밀하게 결합된 형태로 동작했다. 백엔드는 데이터 및 로직을 처리하고, 동시에 프론트엔드를 통해 사용자에게 데이터를 표시하는 역할까지 담당했다. 여기서 프론트엔드가 일종의 "머리" 역할을 했다.헤드리스 구조:헤드리스 아키텍처에서는 백엔드가 "머리(프론트..

Dev 2024.09.25