12-Factors 란
최근 소프트웨어는 개발자 PC, 사내 서버, 클라우드, 컨테이너 환경을 오가며 실행됩니다. 12-Factor는 이런 환경 차이에도 애플리케이션을 예측 가능하게 빌드하고 배포하고 운영하기 위한 12가지 원칙입니다.
HandStack에서 12-Factor는 클라우드 전용 방법론이 아니라, 비즈니스 앱을 오래 운영하기 위한 개발 규칙입니다. ack 호스트, 기본 모듈, 업무 모듈, 계약 파일, 정적 자산, 운영 스크립트가 함께 움직이기 때문에 코드 작성 방식뿐 아니라 설정, 배포, 로그, 관리작업까지 하나의 기준으로 맞춰야 합니다.
SaaS의 특징
- 설정 자동화를 위한 절차를 체계화하여 새로운 개발자가 프로젝트에 참여하는 비용을 줄입니다.
- 운영체제에 따라 달라지는 부분을 명확히 하여 실행 환경 사이의 이식성을 높입니다.
- 개발 환경과 운영 환경의 차이를 줄여 배포 실패와 장애 분석 시간을 줄입니다.
- 빌드, 릴리즈, 실행 단계를 분리하여 같은 산출물을 여러 환경에 안정적으로 배포합니다.
- 도구, 아키텍처, 개발 방식을 크게 바꾸지 않고 확장할 수 있는 기준을 제공합니다.
HandStack 문서에서 다루는 관점
이 카테고리의 문서는 신규 개발자가 HandStack 기반 프로젝트에 합류했을 때 알아야 할 이론과 실무를 함께 다룹니다.
개요문서는 Factor의 의미와 HandStack에서의 해석을 설명합니다.실무 가이드문서는 저장소 구조, 환경 변수,.bat,.ps1,.sh, 모듈별task스크립트, IIS, pm2, Docker, 로그와 같은 실제 운영 기준을 설명합니다.