The Twelve Factor - 빌드, 릴리즈, 실행

코드베이스는 3 단계를 거쳐 (개발용이 아닌) 배포로 변환됩니다. 빌드 단계는 코드 저장소를 코드 저장소를 빌드라는 실행 가능한 번들로 변환시키는 단계입니다. 빌드 단계에서는 커밋된 코드 중 배포 프로세스에서 지정된 버전을 사용하며, 종속성을 가져와 바이너리와 에셋들을 컴파일합니다. 릴리즈 단계에서는 빌드 단계에서 만들어진 빌드와 배포의 현재 설정을 결합 ...

The Twelve Factor - Backend Service

백엔드 서비스는 애플리케이션 정상 동작 중 네트워크를 통해 이용하는 모든 서비스입니다. 예를 들어, 데이터 저장소(예데이터베이스와 같은 백엔드 서비스들은 통상적으로 배포된 애플리케이션과 같은 시스템 관리자에 의해서 관리되고 있었습니다. 애플리케이션은 이런 로컬에서 관리하는 서비스 대신, 서드파티에 의해서 제공되고 관리되는 서비스를 이용할 수 있습니다. 예를...

The Twelve Factors - 설정

애플리케이션의 설정은 배포 (스테이징, 프로덕션, 개발 환경 등) 마다 달라질 수 있는 모든 것들입니다. 설정에는 다음이 포함됩니다. 데이터베이스, memcached 등 백엔드 서비스들의 리소스 핸들 Amazon S3 이나 트위터 등의 외부 서비스 인증 정보 배포된 호스트의 정규화된 호스트 이름(canonical hostname)처럼 각 배포마다 달라지는 ...

The Twelve Factors - 종속성

대부분의 프로그래밍 언어는 라이브러리 배포를 위한 패키징 시스템을 제공하고 있습니다. Perl의 CPAN 이나 Ruby의 Rubygems가 그 예입니다. 라이브러리는 패키징 시스템을 통해 시스템 전체(site pakages)나 애플리케이션을 포함한 디렉토리(vendoring 혹은 bundling)에 설치될 수 있습니다.Twelve-Factor App은 전체...

The Twelve-Factor App 코드베이스

Twelve-Factor 앱은 Git, Mercurial, Subversion 같은 버전 컨트롤 시스템을 사용하여 변화를 추적할 수 있어야 한다. 버전별 소스코드를 관리하는 저장소를 코드 저장소 줄여서 저장소라고 부른다.코드베이스는 단일 저장소(Subversion 같은 중앙 집중식 버전 관리 시스템의 경우) 일수도 있고, 루트 커밋을 공유하는 여러 저장소(...

도움을 줄 수 있는 답변하기

친절하십시오. 문제와 관련된 스트레스가 실제로는 그렇지 않다 할 지라도 사람들을 무례하고 멍청해보이도록 만들수 있습니다. 정확히 모르면 그렇다고 말하십시오. 틀렷지만 그럴 듯한 답은 아예 없는 것 보다 못합니다. 전문가 처럼 이야기하는 것이 재미있다고 해서 틀린 길을 가르쳐 주지는 마십시오. 겸손하고 정직해지십시오. 질문하는 사람에게나 당신의 동료들에게나 ...

질문하기 전에

질문하기 전에. 질문을 할 때 이러한 일들을 먼저했다고 표현해라. 이렇게 하는 것이 당신이 게으른 스폰지처럼 사람들의 시간을 쓸 모 없이 소비하게만 만드는 사람도 아니라는 것을 믿게 하는데 도움이 된다. 더 좋은 것은 당신이 이 일들을 하면서 무얼 배웠는지 적는 것이다. 우리는 답으로 부터 배울 수 있다고 증명한 사람들에게 답변하는 것을 좋아한다....

답변을 어떻게 해석할 것인가?

답변을 어떻게 해석할 것인가? 이건 오래되고도 신성한 전통이다. 만약에 당신이 RTFM이라고 적혀진 답변을 받는 다면 그걸 적은 사람은 당신이 "Read The Fucking Manual"해야한다고 생각한다는 뜻이다. 그가 아마 맞을 것이다. 얼른 가서 매뉴얼을 읽어봐라....

질문할 때

어디에 질문을 할지 선택할 때 신중하라. 다음과 같은 경우 무시되거나 멍청이로 취급받을 수 있다. 게시판의 주제에 벗어나는 질문을 올릴 때. 고급 기술 질문을 다루는 곳에서 기초적인 질문을 할 때, 혹은 반대되는 경우. 너무 많은 뉴스그룹에 동시투고 할 때. 당신을 알고 있지 못하고 문제를 해결해야 할 의무도 없는 사람에게 이메일을 보냈을 때 ...