작성
·
954
답변 1
3
안녕하세요.
python manage.py runserver 로 구동하는 서버는 장고 기본에서 제공하는 개발서버입니다. 개발 생산성 향상에 초점이 맞춰져있으며, 실서비스 목적으로는 사용하지 않습니다. 이 개발서버는 파이썬 소스코드가 변경이 되면 자동으로 재시작이 되는 데요. 수정하신 코드에서 파이썬 문법적인 오류가 있을 때, 가끔 Panic 상태가 되어 자동 재시작 중에 죽을 수 있습니다. 이때는 Ctrl-C 를 입력하여 서버 종류 후에 다시 runserver 명령으로 재시작시켜주시면 되구요.
이렇게 죽는 경우가 자주 있는 것은 아닙니다. 단지 소스파일을 수정하시면서 변경내역을 저장하실 때(Ctrl-S), 문법오류없이 수정하신 후에 저장하신다면 죽는 경우는 거의 발생하지 않습니다. 조금만 주의하시면 되구요.
서버 재시작 속도는 스프링에 비해 장고가 몇 배 더 빠르게 동작합니다. 스프링은 덩치가 조금만 켜져도 재시작에 몇 분 이상 걸립니다.
실서비스에서는 gunicorn이나 uwsgi와 같은 애플리케이션 서버를 활용해서 파이썬 웹 애플리케이션을 구동하게 되는 데요. 아주 안정적이고 빠르게 잘 동작합니다.
"장고 웹 프레임워크가 성능이 안좋아서 장고 쓰는 회사가 스프링에 비해 적은건가?" 라고 생각하시는 부분은
스프링은 자바 웹프레임워크로서 자바가 국내에 상륙해서 가장 오랬동안 사용되었기 때문에 저변이 넓은 것 뿐입니다. 그리고 관성이 작용하고 있는 거죠. 그렇지만 장고의 저변이 빠르게 넓어지고 있는 상황입니다.
서버의 안정성은 언어/프레임워크와는 무관합니다. 그걸 개발하는 사람과 서비스를 관리하는 사람에게 달려있는 것이죠.
답변 감사드립니다
내년 2월에 강의 나오신다고 했는데 꼭 구매해서 강의 듣겠습니다
현재 회사에서 주니어로 API 호출 개발하는건 맡아 진행하는데
강사님 강의 듣고 꼭 장고를 이용한 웹 개발자로 성장해서
장고 생태계에 이바지하겠습니다
감사합니다