#채팅
Go와 React로 만드는 실시간 채팅 서비스 개발기 (7) - Kustomize를 활용한 이미지 태그 관리와 GitOps 완전 자동화
지난 포스팅에서는 Prometheus와 Grafana를 도입하여 GKE 클러스터의 상태를 모니터링하는 환경을 구축했다. 이로써 서비스의 운영 안정성을 확보할 수 있었다. 하지만 배포 파이프라인에는 여전히 수동 개입이 필요한 한계가 존재했다. Docker 이미지 태그를 ...
Go와 React로 만드는 실시간 채팅 서비스 개발기 (6) - Prometheus와 Grafana를 이용한 GKE 클러스터 모니터링 구축
지난 포스팅에서는 PostgreSQL을 연동하여 데이터의 영속성을 확보하고, Ingress와 Managed Certificate를 통해 도메인 연결 및 HTTPS 보안을 적용했다. 이로써 서비스는 기능적으로나 보안적으로 실제 운영이 가능한 형태를 갖추게 되었다. 하지만...
Go와 React로 만드는 실시간 채팅 서비스 개발기 (5) - PostgreSQL 연동 및 GKE 네트워크 트러블슈팅
지난 포스팅에서는 GitHub Actions와 Argo CD를 활용하여, 코드를 푸시하면 자동으로 빌드되어 GKE 클러스터에 배포되는 GitOps CI/CD 파이프라인을 구축했다. 이로써 개발에 집중할 수 있는 환경은 마련되었으나, 서비스 관점에서는 아직 몇 가지 제한...
Go와 React로 만드는 실시간 채팅 서비스 개발기 (4) - GitHub Actions와 Argo CD를 활용한 GitOps CI/CD 파이프라인 구축
지난 포스팅에서는 Terraform을 사용하여 GKE 클러스터와 Compute Engine(DB 서버), Artifact Registry 등 GCP 인프라를 코드로 구축(IaC)하는 과정을 다루었다. 인프라 프로비저닝은 완료되었으나, 실제 애플리케이션을 구동하기 위해서...
Go와 React로 만드는 실시간 채팅 서비스 개발기 (3) - Terraform을 이용한 GCP 인프라 구축
지난 포스팅에서는 Docker와 Docker Compose를 활용해 로컬 개발 환경에서 애플리케이션을 컨테이너화하고 실행하는 과정을 다루었다. 로컬에서의 기능 구현과 테스트는 완료되었으나, 실제 서비스를 위해서는 클라우드 환경에 인프라를 구축해야 한다. 이번 글에서는 ...
Go와 React로 만드는 실시간 채팅 서비스 개발기 (2) - 프론트엔드 제작 및 컨테이너화 과정
React와 Tailwind CSS로 살아있는 UI 만들기 앞선 1부에서는 Go를 사용하여 실시간 통신의 핵심 로직을 담당할 백엔드 서버를 구축했다. 동시성 문제를 해결하기 위한 Hub 패턴 적용부터, JWT를 이용한 상태 비저장 인증, Rate Limiter를 통한 ...