CS

prod, dev, local

롱하 2024. 9. 23. 14:03

운영 환경(prod), 개발 환경(dev), 그리고 로컬 환경(local)의 각각 다른 목적과 특징

 

1. 로컬 환경 (local):

  • 목적: 개인 개발자가 자신의 로컬 컴퓨터에서 애플리케이션을 개발하고 테스트하기 위해 사용.
  • 특징:
    • 로컬에 설치된 데이터베이스나 테스트용 DB 사용.
    • 디버깅이나 로그가 많이 남도록 설정.
    • 복잡한 보안 설정이나 성능 최적화가 필요 없음.
    • 빠른 개발과 테스트를 위해 간단한 설정 사용.
  • 예시: -Dspring.profiles.active=local

2. 개발 환경 (dev):

  • 목적: 팀 단위로 공유되는 개발 서버에서 테스트하거나, 개발 완료된 기능을 통합하고 확인하는 환경.
  • 특징:
    • 여러 개발자가 공용으로 사용하는 개발 서버에서 실행.
    • 실제 운영 데이터베이스와 유사한 개발용 데이터베이스를 사용.
    • 로컬보다 더 엄격한 설정이나 제한이 있을 수 있음.
    • 성능 테스트나 통합 테스트도 진행 가능.
  • 예시: -Dspring.profiles.active=dev

3. 운영 환경 (prod):

  • 목적: 실제 사용자들이 접속하는 운영 서버에서 사용되는 환경.
  • 특징:
    • 안정성, 보안, 성능이 가장 중요하게 고려됨.
    • 최적화된 설정과 리소스 관리가 필요.
    • 실제 고객 데이터와 상호작용하는 환경으로, 철저한 모니터링과 로그 관리가 필요.
    • 디버깅 정보는 최소화하고, 에러 메시지나 예외 처리는 민감하게 관리.
  • 예시: -Dspring.profiles.active=prod

요약:

  • 로컬 환경은 개인 컴퓨터에서의 개발 및 테스트 용도.
  • 개발 환경은 팀 단위로 공유하는 개발 서버에서 통합 테스트를 위한 용도.
  • 운영 환경은 실제 사용자가 접속하는 서버에서 안정성 및 성능을 최우선으로 하는 용도.

각 환경은 개발 단계별로 다르게 설정되어, 안정성과 테스트의 유연성을 제공한다.