서버 로그 관리와 모니터링: 서버가 아프면 누가 알려주는가
‘서버 로그 관리와 모니터링’의 기초를 설명합니다. Spring Boot 로그 설정, Nginx 로그 분석, Health Check 구현, Slack 알림 자동화까지 1인 개발자의 서버 장애 경험담을 바탕으로 한 실전 가이드입니다.
개발 여정을 기록하고, 배움을 나누는 공간
‘서버 로그 관리와 모니터링’의 기초를 설명합니다. Spring Boot 로그 설정, Nginx 로그 분석, Health Check 구현, Slack 알림 자동화까지 1인 개발자의 서버 장애 경험담을 바탕으로 한 실전 가이드입니다.
‘Nginx 리버스 프록시’의 개념과 실전 설정법을 설명합니다. 포트 번호 숨기기, CORS 해결, HTTPS 적용, 로드 밸런싱까지 1인 개발자의 서비스 구축 경험담입니다.
‘Redis 캐싱 전략’의 개념과 실무 적용법을 설명합니다. Look Aside, Write Back 패턴의 차이와 Spring Boot에서 Redis를 연동해 API 응답 시간을 3초에서 0.003초로 줄인 실전 경험담입니다.
‘GitFlow 전략’의 개념과 실무 적용법을 설명합니다. 긴급 버그와 신규 기능이 동시에 터졌을 때, feature/hotfix 브랜치로 작업을 격리하는 방법과 GitLab CI 연동까지 다룹니다.
‘배포 전략과 환경 분리’의 중요성을 1인 개발자의 보고서 작성 에피소드로 설명하고, 남는 서버를 활용해 개발 서버를 구축하고 GitLab CI로 자동/수동 배포를 분리한 실전 경험담입니다.
‘gitlab runner(깃랩 러너) 설치 및 등록’ 과정을 도커(Docker) 기반으로 설명합니다. GitLab CI 파이프라인이 멈춰있는(Pending) 이유를 해결하고, 토큰 발급부터 executor 설정까지 단계별로 가이드합니다.
‘CI/CD 파이프라인 구축’의 개념을 도커파일 비유를 통해 설명하고, .gitlab-ci.yml 작성을 통해 테스트, 빌드, 배포 과정을 자동화하는 방법을 다룹니다.
‘1인 개발자 인프라’ 구축 경험을 통해 배포 안전장치(Git, Test, Docker Tag)의 중요성을 설명합니다. 회사 분해 후 겪은 시말서 에피소드와 CI/CD 필요성을 깨닫는 성장기입니다.
‘도커 컨테이너와 서비스’의 차이를 햄버거 세트 메뉴 비유로 쉽게 설명하고, 복잡한 인프라 주문(배포)을 해결하기 위한 도커 컴포즈(Docker Compose)의 필요성을 다룹니다.
‘도커 이미지와 레이어’의 원리를 투명 셀로판지와 팬케이크 비유로 설명하고, Dockerfile 작성 순서에 따른 레이어 캐싱 최적화 팁을 제공합니다.