"12 팩터 앱"의 두 판 사이의 차이

 
(사용자 2명의 중간 판 30개는 보이지 않습니다)
1번째 줄: 1번째 줄:
==개요==
==개요==
;The Twelve-Factor App
;Twelve-Factor App, Twelve-Factor App methodology
;12 팩터 앱
;12 팩터 앱, 12 요소 애플리케이션, 12 팩터 앱 방법론
*  [[SaaS]] 앱을 만들기 위한 방법론


{| class='wikitable'
{| class='wikitable'
! # !! 팩터(영어) !! 팩터(한국어) !! 설명  
!style='min-width:36px'| #
! 팩터(영어) !! 팩터(한국어) !! 설명  
|-
|-
| 1 || Codebase || 코드베이스 || 버전 관리되는 하나의 코드베이스와 다양한 배포
| 1 || [[Codebase]] || [[코드베이스]] ★★ || 단일 코드베이스. 버전 관리되는 하나의 코드베이스와 다양한 배포. 개발/테스트/운영서버(인스턴스)는 동일한 코드 기반이어야 함
|-
|-
| 2 || Dependencies || 종속성 || 명시적으로 선언되고 분리된 종속성
| 2 || Dependencies || 의존성 || 명시적으로 선언되고 분리된 의존성. 필요한 의존성을 애플리케이션과 함께 담음
|-
|-
| 3 || Config || 설정 || 환경(environment)에 저장된 설정<ref>소스코드는 하나, 환경에 따라 설정만 바꿔 올림</ref>
| 3 || Config || 설정 ★★ || 환경설정은 분리하여 외부에 보관. 소스코드(코드베이스)는 하나, 환경(개발/테스트/운영)에 따라 설정만 바꿔야 함
|-
|-
| 4 || Backing Services || 백엔드 서비스 || 백엔드 서비스를 연결된 리소스로 취급
| 4 || Backing Services || 백엔드 서비스 || 백엔드 서비스를 연결된 리소스로 취급. URL을 통해 접근(바인딩)되어야 함
|-
|-
| 5 || Build, release, run || 빌드, 릴리즈, 실행 || 철저하게 분리된 빌드와 실행 단계
| 5 || Build, release, run || 빌드, 릴리스, 실행 || 분리된 빌드와 실행 단계를 가져야 함
|-
|-
| 6 || Stateless process || 무상태 프로세스 || 애플리케이션을 하나 혹은 여러개의 무상태 프로세스로 실행<ref>상태는 외부 저장소에 저장</ref>
| 6 || Stateless process || 무상태 프로세스 ★★ || 애플리케이션을 하나 혹은 여러개의 무상태 프로세스로 실행. 상태는 외부저장소에 보관
|-
|-
| 7 || Port binding || 포트 바인딩 || 포트 바인딩을 사용해서 서비스 공개
| 7 || Port binding || 포트 바인딩 || 포트 바인딩을 사용해서 서비스 노출. 별도의 웹서버를 두지 않고 자기완결적으로 서비스 제공
|-
|-
| 8 || Concurrency || 동시성 || 프로세스 모델을 사용한 확장(scale out)
| 8 || Concurrency || 동시성 || 프로세스 모델을 사용한 확장(scale out). 프로세스가 복제를 통해 확장될 수 있게 설계해야 함
|-
|-
| 9 || Disposability || 폐기 가능 || 빠른 시작과 그레이스풀 셧다운(graceful shutdown)을 통한 안정성 극대화
| 9 || Disposability || 폐기 가능 || 빠른 시작과 그레이스풀 셧다운(graceful shutdown)을 통한 안정성 극대화
|-
|-
| 10 || Dev/prod parity || dev/prod 일치 || development, staging, production 환경을 최대한 비슷하게 유지
| 10 || Dev/prod parity || dev/prod 일치 || development, staging, production 환경을 최대한 동일하게 유지
|-
|-
| 11 || Logs || 로그 || 로그를 이벤트 스트림으로 취급
| 11 || Logs || 로그 || 로그를 이벤트 스트림으로 취급. 로컬서버에 저장하지 말고 중앙저장소로 수집
|-
|-
| 12 || Admin processes || Admin 프로세스 || admin/maintenance 작업을 일회성 프로세스로 실행
| 12 || Admin processes || Admin 프로세스 || admin/maintenance 작업을 일회성 프로세스로 실행
33번째 줄: 33번째 줄:


==같이 보기==
==같이 보기==
* [[SaaS]]
* [[클라우드 네이티브 애플리케이션]]
* [[마이크로서비스 아키텍처]]
* [[인프라스트럭처 애즈 코드 IaC]]


==참고 자료==
==참고==
* http://12factor.net/ko/
* http://12factor.net/ko/
* {{영어위키백과|Twelve-Factor App methodology}}


[[분류: 개발]]
[[분류: 애플리케이션]]
[[분류: 12]]
[[분류: 12]]

2021년 11월 5일 (금) 00:06 기준 최신판

1 개요[ | ]

Twelve-Factor App, Twelve-Factor App methodology
12 팩터 앱, 12 요소 애플리케이션, 12 팩터 앱 방법론
# 팩터(영어) 팩터(한국어) 설명
1 Codebase 코드베이스 ★★ 단일 코드베이스. 버전 관리되는 하나의 코드베이스와 다양한 배포. 개발/테스트/운영서버(인스턴스)는 동일한 코드 기반이어야 함
2 Dependencies 의존성 명시적으로 선언되고 분리된 의존성. 필요한 의존성을 애플리케이션과 함께 담음
3 Config 설정 ★★ 환경설정은 분리하여 외부에 보관. 소스코드(코드베이스)는 하나, 환경(개발/테스트/운영)에 따라 설정만 바꿔야 함
4 Backing Services 백엔드 서비스 백엔드 서비스를 연결된 리소스로 취급. URL을 통해 접근(바인딩)되어야 함
5 Build, release, run 빌드, 릴리스, 실행 분리된 빌드와 실행 단계를 가져야 함
6 Stateless process 무상태 프로세스 ★★ 애플리케이션을 하나 혹은 여러개의 무상태 프로세스로 실행. 상태는 외부저장소에 보관
7 Port binding 포트 바인딩 ★ 포트 바인딩을 사용해서 서비스 노출. 별도의 웹서버를 두지 않고 자기완결적으로 서비스 제공
8 Concurrency 동시성 ★ 프로세스 모델을 사용한 확장(scale out). 프로세스가 복제를 통해 확장될 수 있게 설계해야 함
9 Disposability 폐기 가능 ★ 빠른 시작과 그레이스풀 셧다운(graceful shutdown)을 통한 안정성 극대화
10 Dev/prod parity dev/prod 일치 development, staging, production 환경을 최대한 동일하게 유지
11 Logs 로그 ★ 로그를 이벤트 스트림으로 취급. 로컬서버에 저장하지 말고 중앙저장소로 수집
12 Admin processes Admin 프로세스 admin/maintenance 작업을 일회성 프로세스로 실행

2 같이 보기[ | ]

3 참고[ | ]

문서 댓글 ({{ doc_comments.length }})
{{ comment.name }} {{ comment.created | snstime }}