1인 SaaS를 홈서버에서 VPS로 옮기며 겪은 사소하지만 성가신 문제들
유료 AI/기술 뉴스레터 SaaS를 집 서버에서 운영하던 개발자가 이번 주 실제 VPS로 이전을 완료했다. 홈 인터넷이 끊길 때마다 서비스 전체가 멈추는 문제를 없애기 위한 조치였다. 정작 코드를 옮기는 작업은 어렵지 않았고, 진짜 걸림돌은 지루한 인프라 디테일이었다.
목표로 삼은 MySQL 버전이 사용 중인 우분투 배포판의 공식 apt 저장소에 없어서 다른 버전으로 대체한 뒤 문제가 없는지 일일이 확인해야 했다. 또 막 만든 기능에서는 응답 데이터를 파싱하는 필드 이름이 잘못되어 있었는데, 이는 모의(mock) 테스트로는 잡히지 않고 실제 으로 테스트했을 때야 드러났다. 이전 방식은 단계적이었다: 새 서버에 전체 환경을 구축하고 기존 서버가 실제 트래픽을 처리하는 동안 격리된 환경에서 테스트한 뒤, 전체를 끝까지 검증하고 나서야 전환을 실행했다.
기존 구독자에게 예약된 발송 시간과 겹치지 않도록 전환 타이밍까지 맞춰서, 중복 발송이나 누락이 없도록 했다.
핵심 포인트
- 집 서버 운영 시 인터넷 장애가 곧 서비스 전체 장애()로 이어지는 문제 때문에 VPS로 이전
- 목표 MySQL 버전이 우분투 공식 저장소에 없어 대체 버전으로 전환 후 호환성 검증
- 로는 못 잡은 필드명 오류가 실제 토큰 테스트에서 발견됨
- 새 서버 구축 후 기존 서버가 트래픽을 처리하는 동안 격리 환경에서 먼저 검증하는 단계적 전환 방식 사용
- 구독자 예약 발송 시간과 겹치지 않게 전환 시점을 맞춰 중복/누락 발송 방지