파비의 매일매일 공부기록

Two Scoops of Django - #31장 본문

Study/Python

Two Scoops of Django - #31장

fabichoi 2021. 7. 2. 23:30

이번장은 장고 프로젝트 배포에 대한 내용이다.

배포야 워낙 다양한 환경에서 서로 다른 방법으로 이뤄지다 보니 정형화는 할 수 없겠지만

그래도 도움이 될 내용이 있을까 해서 읽어봤다.

 

1. 작은 프로젝트를 위한 단일 서버의 경우 : 단일 서버를 구성하는 게 최선이나 유명 블로그 등에 인용되는 순간 사이트가 다운될 확률이 높다.

 - 단일 서버 구성을 피해야 하나? : 굳이 그럴 필요는 없다.

 - 우분투 + 구니콘을 이용한 셋업 : 여러 방법을 소개하지만 결국 온라인을 참고하라 함

 

2. 중대형 프로젝트를 위한 다중 서버의 경우 : PaaS가 아닌 경우 직접 서버를 구성할 때에 대한 내용. 각 서버의 프로세스들을 관리할 때는 supervised, init 스크립트를 활용할 것

 - 좀 더 발전된 다중 서버 구성 : 로드밸런싱 구성

 

3. WSGI 애플리케이션 서버 : 항상 장고 프로젝트를 WSGI와 함께 배포할 것.

 - 일반적인 WSGI 배포 구성 : uWSGI와 Nginx, 구니콘과 Nginx 프락시, 아파치와 mod_wsgi. 각 구성에 대한 장단점은 책에 나와있다.

 

4. 성능과 튜닝: uWSGI와 구니콘

 

5. 안정성과 간편한 셋업: 구니콘과 아파치 : 쉽고 빠르게 구동하려면 이 조합이 최고.

 

6. 아파치 이용 시 주의할 점 : mod_python 이용하지 말 것. 환경 변수가 작동하지 않음 유의.

 

7. 자동화된 반복 배포 : 현재는 자동 배포가 아니라서 실서버에 접속해서 배포해야 하는 번거로움 존재. 그렇기에 자동화된 반복 배포가 필요.

 - 예전에는 몇 가지 기술이 있었으나 요즘은 도커, 앤서블 등이 대세.

 

8. 어떤 자동화 도구를 이용해야 하는가? : 기업체의 이권 개입 등 생각보다 단순 마케팅을 통해서만 사용하지 말고 실제로 연구 및 조사해보고 결정할 것

 

9. 현재(저자 기준) 인프라스트럭처 자동화 도구 소개

반응형

'Study > Python' 카테고리의 다른 글

Two Scoops of Django - #33장  (0) 2021.07.04
Two Scoops of Django - #32장  (0) 2021.07.03
Two Scoops of Django - #30장  (0) 2021.07.01
Two Scoops of Django - #29장  (0) 2021.06.30
Two Scoops of Django - #28장  (0) 2021.06.29
Comments