Loading the catalog…
Loading the catalog…
개발 용어 탐구 6편 - 배포와 운영 용어: CI/CD, 빌드, 배포, 모니터링 들어가며 개발자가 코드를 작성했다고 해서 바로 사용자가 서비스를 이용할 수 있는 것은 아니다. 일반적인 서비스 개발 과정은: 코드 작성 ↓ 테스트 ↓ 빌드 ↓ 배포 ↓ 운영 ↓ 모니터링 과정을 거친다. 이 과정에서 등장하는 용어가: 빌드(Build) 배포(Deploy) CI/CD 파이프라인(Pipeline) 테스트 자동화 모니터링(Monitoring) 로그(Log) 장애 대응 이다. 이번 글에서는 실제 개발팀에서 자주 사용하는 운영 관련 용어를 알아본다. 1. 빌드(Build) 빌드는: 작성한 소스 코드를 실행 가능한 형태로 만드는 과정 이다. 쉽게 말하면: "프로그램을 실행할 수 있도록 준비하는 과정" 이다. 예: 개발자가 작성: Java 코드 Kotlin 코드 Python 코드 ↓ 빌드: 실행 가능한 프로그램 생성 빌드 과정에는 보통: 코드 컴파일 라이브러리 연결 파일 패키징 테스트 실행 등이 포함된다. 2. 컴파일(Compile)과 빌드(Build)의 차이 둘은 비슷하지만 다르다. 컴파일 소스 코드를 다른 형태의 코드로 변환하는 과정 예: Java 코드 ↓ Bytecode 빌드 실행 가능한 프로그램을 만들기 위한 전체 과정 포함: 컴파일 + 라이브러리 연결 + 테스트 + 패키징 관계: 빌드 └── 컴파일 포함 3. 배포(Deployment) 배포는: 완성된 프로그램을 실제 사용자가 사용할 수 있는 환경에 올리는 과정 이다. 예: 개발자의 컴퓨터: 완성된 서비스 ↓ 배포: 서버에 업로드 ↓ 사용자가 접속 가능 웹 서비스라면: 코드 ↓ 서버 ↓ 도메인 접속 ↓ 사용자 이용 과정이다. 4. 배포 방식 수동 배포 개발자가 직접 실행: 파일 이동 ↓ 서버 접속 ↓ 프로그램 실행 문제: 실수 가능 시간이 오래 걸림 반복 작업 어려움 자동 배포 도구가 자동으로 처리: 코드 변경 ↓ 자동 테스트 ↓ 자동 빌드 ↓ 자동 배포 현재 많은 기업이 자동화를 사용한다. 5. CI(Continuous Integration) CI는: 지속적 통합 이라는 의미이다. 개발자가 코드를 작성하면: 코드 작성 ↓ Git 저장소 업로드 ↓ 자동 테스트 ↓ 문제 확인 과정을 수행한다. 목적: 코드 오류 빠른 발견 여러 개발자의 코드 통합 품질 유지 예: 개발자 A: 로그인 기능 추가 개발자 B: 결제 기능 추가 CI가: 두 코드가 함께 동작하는지 확인 한다. 6. CD(Continuous Delivery / Deployment) CD는: 지속적 제공 또는 지속적 배포 를 의미한다. CI가: 코드 검사 라면, CD는: 검사 완료 ↓ 자동 배포 까지 담당한다. 전체 흐름: 개발자 코드 작성 ↓ Git Push ↓ CI 테스트 ↓ 빌드 ↓ CD 배포 ↓ 서비스 반영 7. CI/CD Pipeline 파이프라인은: 코드가 서비스로 전달되는 자동화 과정 이다. 예: Code ↓ Build ↓ Test ↓ Deploy ↓ Production 각 단계를 연결한 흐름을: CI/CD Pipeline 이라고 한다. 대표 도구: GitHub Actions Jenkins GitLab CI/CD CircleCI 8. 테스트 자동화(Test Automation) 테스트 자동화는: 사람이 직접 확인하지 않고 프로그램으로 테스트하는 것 이다. 예: 회원 가입 기능 테스트: 자동: 회원가입 요청 ↓ 결과 확인 ↓ 성공 여부 판단 장점: 반복 테스트 가능 오류 빠른 발견 배포 안정성 증가 9. 운영 환경(Production) 개발 환경에서는 정상 작동해도 실제 서비스에서는 문제가 발생할 수 있다. 그래서 환경을 구분한다. Development 환경 개발자가 작업하는 환경. 개발 PC 테스트 데이터 Test 환경 테스트 목적. Production 환경 실제 사용자가 사용하는 환경. 실제 서비스 실제 사용자 실제 데이터 현업에서는 Production을 줄여서: Prod 라고 많이 부른다. 10. 모니터링(Monitoring) 모니터링은: 서비스 상태를 지속적으로 확인하는 것 이다. 확인하는 정보: CPU 사용량 메모리 사용량 응답 시간 오류 발생률 트래픽 예: 사용자 증가 ↓ CPU 90% ↓ 서버 증설 필요 같은 판단을 한다. 11. 로그(Log) 로그는: 프로그램 실행 과정에서 남기는 기록 이다. 예: 로그: 2026-09-29 10:00 User Login Success User ID: 123 로그를 통해: 오류 원인 확인 사용자 행동 분석 장애 조사 를 한다. 12. 장애(Incident) 장애는: 서비스가 정상적으로 동작하지 않는 상황 이다. 예: 서버 다운 DB 연결 실패 응답 속도 저하 오류 증가 장애 발생: 사용자 영향 ↓ 원인 분석 ↓ 복구 ↓ 재발 방지 과정을 거친다. 13. 롤백(Rollback) 롤백은: 문제가 발생한 변경 사항을 이전 상태로 되돌리는 것 이다. 예: 새로운 버전 배포: Version 2 배포 ↓ 문제 발생: 로그인 오류 ↓ 롤백: Version 1 복구 14. 개발자와 운영의 관계 현대 개발에서는 개발자가 운영 과정도 이해해야 한다. 흐름: 개발 ↓ Git 관리 ↓ CI/CD ↓ 배포 ↓ 모니터링 ↓ 장애 대응 좋은 개발자는: "코드를 작성했다" 에서 끝나는 것이 아니라: "서비스가 안정적으로 운영된다" 까지 생각한다. 마무리 배포와 운영은 소프트웨어 개발 과정에서 매우 중요한 부분이다. 정리하면: Build = 실행 가능한 프로그램 생성 Deploy = 서비스 환경에 배치 CI = 코드 통합 자동화 CD = 배포 자동화 Pipeline = 자동화된 작업 흐름 Monitoring = 서비스 상태 확인 Log = 실행 기록 Rollback = 이전 버전 복구 현업 개발자는 코드를 작성하는 것뿐 아니라, 자신의 코드가 실제 서비스에서 어떻게 배포되고 운영되는지 이해해야 한다. 다음 글에서는 대규모 서비스를 만들 때 등장하는 시스템 설계 용어(모놀리식, MSA, 캐시, 로드밸런서, 메시지 큐) 를 알아본다.
What RADAR observed and classified to build this opportunity. It is what the source published, not a verification that the offer is still active.
# 개발 용어 탐구 6편 - 배포와 운영 용어: CI/CD, 빌드, 배포, 모니터링. 개발 용어 탐구 6편 - 배포와 운영 용어: CI/CD, 빌드, 배포, 모니터링 들어가며 개발자가 코드를 작성했다고 해서 바로 사용자가 서비스를 이용할 수 있는 것은 아니다. 일반적인 서비스 개발 과정은: 코드 작성 ↓ 테스트 ↓ 빌드 ↓ 배포 ↓ 운영 ↓ 모니터링 과정을 거친다. 이 과정에서 등장하는 용어가: 빌드(Build) 배포(Deploy) CI/CD 파이프라인(Pipeline) 테스트 자동화 모니터링(Monitoring) 로그(Log) 장애 대응 이다. 이번 글에서는 실제 개발팀에서 자주 사용하는 운영 관련 용어를 알아본다. 1. 빌드(Build) 빌드는: 작성한 소스 코드를 실행 가능한 형태로 만드는 과정…
Open source