회원가입을 하면 원하는 문장을
저장할 수 있어요!
다음
회원가입을 하면 원하는 문장을
저장할 수 있어요!
다음
여러분은 파이썬 프레임워크, 장고(Django)에 대해 얼마나 알고 계시나요? 우선 파이썬이 무엇인지 먼저 짚고 넘어가겠습니다. 파이썬은 디자인 자체의 가독성(readability)이 뛰어난 강력한 프로그래밍 언어입니다. 예를 들면, 파이썬에서 채택하고 있는 적절한 들여쓰기 방식은 최고의 기술력에 더욱 커다란 힘을 실어줍니다. 또한 단순한 디자인 덕분에 비교적 배우기도 쉬운데, 특히 기업들이 주로 사용하는 좀 더 복잡한 자바(Java)나 씨샵(C#)과 비교하면 그런 점이 더욱 두드러집니다.
장고는 파이썬으로 웹 애플리케이션을 만드는 데 있어서 가장 인기 있는 프레임워크입니다. 장고는 모델-뷰-템플릿(Model View Template, MVT) 패턴을 사용하고 있는데, 이는 모델-뷰-컨트롤러(Model View Controller, MVC) 패턴을 살짝 수정한 버전이라고 할 수 있습니다. 즉, 장고에서는 뷰(View)가 좀 더 컨트롤러(Controller)처럼 작동하며, 템플릿(Template)은 뷰(View)의 역할을 합니다. 이러한 솔루션은 비즈니스의 맥락과 로직을 구분할 수 있는 유연한 방식을 제공해 줍니다. 즉, 각각의 계층은 각자 별도의 책임을 갖는 것이죠.
오늘은 여러분들에게 파이썬의 단짝, 장고에 대해서 조금 더 자세히 소개해드리는 시간을 갖도록 하겠습니다.
장고는 거의 모든 CRUD 기능을 생성하는데 완벽하기 때문에, 웹 애플리케이션을 놀라울 정도로 빠르게 제작할 수 있습니다. 그리고 파이썬이라는 거대한 생태계 덕분에 훨씬 더 복잡한 앱도 얼마든지 가능하며, 그렇게 해서 만들 수 있는 애플리케이션의 종류는 거의 무한하다고 할 수 있습니다.
최근에는 인공지능(AI)이나 머신러닝(ML)과 연관되어 파이썬의 인기가 더욱 상승했고, 거대 테크기업들이 수많은 훌륭한 라이브러리들을 폭넓게 채택하면서 장고의 인기가 점점 더 커지고 있습니다.
시작하는 단계에서부터 제대로 최적화를 하고 확장 가능한 아키텍처를 만든다면, 나중에 속도와 관련해서 나타날 수도 있는 수많은 문제들을 미리 방지할 수 있습니다. 장고는 현재 엄청나게 많은 웹 애플리케이션들에게 힘을 실어주고 있습니다. 속도와 관련한 이슈가 발생한다면 장고 자체의 문제라기보다는, 적절하지 못한 환경설정과 아키텍처 설계의 문제인 경우가 많습니다.
장고는 표준화된 웹 애플리케이션을 정말로 빠르게 출시하기 위해서 만들어졌습니다. 즉, 장고는 간단한 CRUD 앱은 물론이고 보다 정교한 웹 애플리케이션을 만드는데 필요한 구성요소들이 결합되어 있습니다. 정말로 간단한 서비스를 만드는 경우라면, 모든 “배터리”들이 포함되어 있는 장고는 지나치게 복잡해 보일 수도 있습니다.
> 이 글은 'Django Framework Review - Pros and Cons'를 각색하여 작성되었습니다.
좋아요
댓글
공유
공유
넷마블 QA실에서는 ‘크래시리포트’라는 시스템을 운영하고 있습니다. 크래시리포트는 게임 실행 과정에서 예상치 못한 종료 현상이 발생할 때, 그 상황을 저장한 데이터를 크래시라 합니다. 이러한 크래시리포트 운영용으로 마련한 엣지 서버 클러스터 환경에서는 신규 파드 추가마다 최소 1분 이상 필요했습니다. 게임 사용자가 언제 급증할지 예측할 수 없기에, 스케줄에 맞춘 확장도 적합하지 않았습니다. 또한 서버에 접속하는 클라이언트의 통신 연결 대기 시간은 대략 10~20초로 설정돼 있어서, 신규 파드를 준비하기 위해 소모하는 1분 동안 누락되는 데이터도 늘어날 수밖에 없었습니다.
여기어때에서는 WorkerNode의 AutoScaling 도구로 Karpenter를 사용하고 있습니다. 일반적으로 POD의 수량이 부족한 상황이 되면 HPA에 의해 POD가 Scale out 되며 신규 배포가 수행됩니다. 이때 WorkerNode에 충분한 공간이 있다면 정상적인 배포가 이루어지겠지만 공간이 부족한 상황이라면 POD는 모두 Pending 상태에 빠집니다. 이러한 상황을 해결하기 위해서는 WorkerNode를 Scale out 해주는 과정이 필요한데 이러한 과정을 담당하는 도구가 Karpenter입니다.
지금 회원가입하고,
요즘IT가 PICK한 뉴스레터를 받아보세요!