Django Basic 1-1) Install Django

Turtle·2023년 12월 20일
0
post-thumbnail

📌Django를 사용한 웹 서버 구성

참고 자료 - Django runserver

  • 처음 네트워크 회선을 통해서 데이터가 들어오면 이를 OS가 해석해서 컴퓨터 내에 실행되고 있는 프로그램으로 보내게 되는데 이 때, OS의 특정 포트를 점유하고 있으면서 OS로부터 처음에 해석된 요청 데이터를 받는 프로그램을 웹 서버라고 한다.
  • 웹 서버 미들웨어가 웹 서버의 역할을 할 수도 있지만 만약 Apache나 Nginx와 같은 웹 서버 미들웨어를 사용하지 않고 직접 장고가 요청을 받을 수 있게 한다면 장고가 웹 서버의 역할도 같이 하게 되는 건데 장고 프레임워크 내에서는 장고 프로그램을 웹 서버로 띄우는 기능도 내장되어 있어서 우리가 개발할 때는 이 기능을 사용해서 미들웨어 필요없이 웹 서버이자 웹앱의 역할을 모두 하도록 하는 것이다.
  • 하지만 나중에 배포를 하는 과정에서 앞에서 말했던 대로 웹 서버 미들웨어인 Nginx를 통해서 서버를 실행시킬 예정이다.
  • 실제로 다 만들어진 사이트를 사용자에게 공개할 때는 반드시 서버를 띄워야 한다. 이는 여러 http 요청이 들어왔을 때 제대로 처리하지 못하는 파이썬 프로그램의 구조(한계)때문에 파이썬을 직접 웹 서버로 띄우게 되면 동시 접속자를 처리하기는 많이 어렵기 때문에 결국 asgi나 wsgi, 그리고 Nginx 등의 미들웨어를 필수적으로 사용해서 웹 서버로 띄우고 그 웹 서버를 통해서 웹앱을 실행시키는 구조로 진행해야한다는 것을 명심하자.

python manage.py runserver

  • Django의 로컬 서버를 가동할 때 터미널에 다음과 같은 명령어를 입력하면 로컬 서버가 실행이 된다.
  • 하지만 이것은 debug용으로 local에서만 사용해야 하고 실제 production 환경에서는 추천하지 않습니다.
  • Django는 웹 개발을 신속하게 해주는 웹 프레임워크일뿐! Django는 엄밀히 따지자면 웹 서버가 아니다.

0개의 댓글