Django ) Django를 쓰는 이유
웹서버(apache, nginx, IIS)를 사용하는것과 웹 애플리케이션 서버(django, flask, php, jsp, ROL)를 만들어서 사용하는 것은 어떤 차이가 있을까?
웹서버를 사용할때에는 필요한 페이지를 미리 만들어놔야하지만 웹 애플리케이션 서버를 사용할때에는 웹페이지를 생성하는 공장이라고 할수있는 프로그램을 하나만 만들어 놓으면 된다. 예를 들면 view.py .
웹서버는 사용자가 접속할때 미리 준비되어있는 페이지로 접속하게된다.
그러나 웹 애플리케이션 서버에서는 사용자가 접속할때, 예를들어 /read/1/ 로 접속하면 1번에 해당하는 데이터를 데이터베이스 같은곳에서 가져와서 그 순간에 html에 코드를 만든 후 그것을 응답하게된다.
이러한 특성때문에 웹서버는 한번 만들면 계속 그렇게 생긴거라서 정적( static )이라고 얘기하고
웹 애플리케이션 서버는 동적( dynamic )이라고 한다. 왜냐하면 요청이 들어올때마다 순간순간 만들어내기 때문이다.
웹서버의 경우에는 성능이 굉장히 빠르다. 준비되어있는걸 쓰기때문이다. 배워야할것도 없다.
그렇지만 웹 애플리케이션의 경우 웹서버보다는 성능이 느리지만 요즘은 컴퓨터 성능이 좋아서 신경쓸 정도는 아니다.
그리고 배워야 할것도 많다. 그럼에도 불구하고 웹 애플리케이션을 사용하는 이유는 유지보수 하기가 좋다.
view.py 파일만 수정하면 이 파일이 만들어내는 웹페이지가 한번에 바뀌는 효과를 낼 수 있기 때문이다.
또 개인화된 정보를 만들어줄 수 있다. 사용자가 접속이 들어올때마다 웹페이지를 생성하는거니까. 그 접속한 사람에게 알맞는 정보를 그때그때 만들어줄수있다는것이다.
위와같이 코딩하면 접속할때마다 랜덤하게 숫자바뀌게 구현할수있다.