-
장고를 사용하는 이유백엔드 : 서버공부/Django 2023. 7. 29. 12:57728x90
이번에는 Web Server를 사용하는것과 Web Application Server를 만들어서 사용하는 것의 차이에대해 공부해보겠습니다.
Web Server Web Application Server
apache, nginx, IIS django, flask, php, jsp, ROL 차이점
STATIC
- Web Server를 사용할때는 1html, 2html과 같은 페이지를 미리 만들어 두어야합니다.
- Web Server에 ****사용자가 접속시에 미리준비되어 있는 페이지로 접속을 하게 됩니다.
- 준비되어있는 것을 사용하므로 성능이 빠릅니다.
DYNAMIC
- Web Application Server를 사용할 때는 웹페이지를 생성하는 공장이라고 할 수 있는 view.py와 같은 프로그램을 하나만 만들어 두면 됩니다.
- Web Application Server를 사용자가 접속할때 해당 주소에해당하는 데이터를 데이터베이스에서 가지고와서, 그 순간에 html코드를 만들어 응답하게 됩니다.
- Web Server에 비해 ****굉장히 느립니다.
- 유지보수하기에 용이합니다.
- 개인화된 정보를 만들어줄 수 있습니다.
동적인 특성을 보여줄만한 예시를 살펴보겠습니다.
기존의 views.py를 수정해서 사용자가 접속할때 마다 랜덤한 정보를 보여주는 Web Application을 만들어보도록 하겠습니다.
from django.shortcuts import render, HttpResponse # Create your views here. def index(request): return HttpResponse('Welcome!') def create(request): return HttpResponse('Create') def read(request, id): return HttpResponse('Read!'+id)
위 코드은 기존의 views.py의 코드입니다.
아래와같이 수정해줍니다.
from django.shortcuts import render, HttpResponse import random # Create your views here. def index(request): return HttpResponse('<h1>Random</h1>'+str(random.random())) def create(request): return HttpResponse('Create') def read(request, id): return HttpResponse('Read!'+id)
수정을한 후 http://127.0.0.1:8000/myapp/ 에 접속을해봅니다.
이렇게 접속을 할때마다 랜덤한 숫자가 나타나게 되는 것을 확인할 수 있습니다.
페이지에 오른쪽 마우스를 클릭해 소스코드를 보게되면 접속때마다 만들어지는 코드를 확인할 수 있습니다.
이것은 정적인 Web Server는 할 수 없는일입니다.
'백엔드 : 서버공부 > Django' 카테고리의 다른 글
장고 읽기 구현 2 (0) 2023.07.29 장고 읽기 구현 1 (0) 2023.07.29 장고 라우팅 (0) 2023.07.29 장고 앱 만들기 (0) 2023.07.29 포트의 개념 (0) 2023.07.29