목록전체 글 (40)
LearnRun
◈ Contents 이전 과정처럼 Django와 DB만 연결해도, 일단 사용할 수 있는 페이지 구현이 가능합니다. 외부 접속을 닫는 등.. 부하를 주지 않는 작업에 단순한 툴로써 내부망에서 사용하면 적당히 쓸 수는 있습니다. 하지만, 그래서는 단순히 일개 프로그램을 웹으로 옮겨놓은 것 밖에 안됩니다. 하나의 요청을 처리하는 와중 페이지가 뻗거나, 동시다발적인 처리가 필요함에도 이를 순차적으로 처리하는 등 웹으로써의 장점을 전혀 살리지 못합니다. 그러니, Django 내의 Runserver는 웹 프레임워크로써 제공하는 단순 테스트용 기능에 가깝다고 보시면 됩니다. 성능과 보안 이슈 등 본 방식을 사용할 이유는 다양하지만 자세한 내용은 다른 포스팅으로 남기기로 하고, 본 포스팅에서는 세팅방식을 우선하여 다루..
◈ Contents DB 튜닝을 검색하면 많은 자료가 나오는데, DB 버전 등 환경에 따라 너무 달라서, 공식 문서를 보며 일부 정리하였습니다. 주요 파라미터 사용 INNODB_BUFFER_POOL_SIZE - 데이터 파일과 로그 파일이 기록되는 순서를 관리하거나, 디스크 액세스를 줄이는 캐시 역할을 합니다. - 실제로, 저는 쿼리/인덱스 튜닝을 충분히 진행했음에도 속도 개선이 미미하면 해당 파라미터를 의심합니다. - 총 메모리의 80%까지 지정할 수 있습니다만, 컨테이너를 여럿 가동하는 만큼 적당한 조정이 필요하겠습니다. MAX_CONNECTIONS - 튜닝과 조금 거리가 있지만 사용할 필요가 있기에 항목을 만들었습니다. - 대개 NAS에서 사용할 때는 건드릴 일 없으나, connection 초과가 발..
◈ Contents django 컨테이너 설정 내부 설정 - django 컨테이너 터미널로 접속합니다. - ctrl+C를 눌러, 현재 실행되어 있는 django를 종료하고 콘솔 입력창을 활성화할 수 있습니다. apt-get install libmysqlclient-dev mysqlclient를 설치하기위해 라이브러리를 추가합니다. pip install mysqlclient mariadb와 연결하기위해, 패키지를 설치합니다. 외부 설정 - django_test 컨테이너를 잠시 끄고, 편집을 진행합니다. - 편집의 일반설정 탭에서, "고급 설정"을 누른 뒤 해당 창의 "링크"탭을 누릅니다. - 본 사진과 같이, mariadb_test 컨테이너를 추가하고 별칭을 똑같이 적어줍니다. - 저장하고, 다시 컨테이너..
◈ Contents 본 글에서 기술하는 방식은 Docker + Django로 구성한 이전 글의 결과물을 바탕으로 합니다. 이전 글을 참조하시면 이해하기 수월하니 이 점 참고해주세요. 길어서 파트를 좀 나눴습니다. 본 글에서는 컨테이너 생성부터 DB의 생성, 유저 생성 및 권한 설정을 다룹니다. Docker 앱 내 MariaDB 컨테이너 생성 이미지 설치 - 레지스트리 탭에서 mariadb를 검색하여 더블클릭합니다. - 버전을 고를 수 있는데, 현재 stable 버전 중 docker 앱을 지원하는 가장 최신 버전인 10.9.4를 채택했습니다. - 이미지 탭으로 가서, mariadb 10.9.4를 더블클릭, 컨테이너 생성을 준비합니다. 컨테이너 설정 일반 설정 및 고급 설정 - 이전의 django_test와..
◈ Contents 본 글에서는 컨테이너 내부에 설치한 Django로 접속할 수 있게 설정하는 과정을 소개합니다. 컨테이너 포트 설정 - 이전 글을 잘 따라왔다면, django_test라는 이름으로 컨테이너가 가동 중일 것입니다. - 우측의 스위치를 눌러 컨테이너를 종료해주시고, 해당 컨테이너를 선택한 후 상단의 편집을 눌러주세요. - 편집 창에서 상단의 포트 설정 탭을 눌러주시고, 포트를 추가합니다. - Docker 외부에서 1234 포트로 접속하면, 내부의 8080포트로 접속 가능하게 만들어줍니다. - 1234는 예시입니다. 과정을 잘 소화하셨다면 나중에 잘 바꿔 쓰시면 됩니다. - 설정을 완료한 후, 컨테이너를 가동합니다. Django 프로젝트 내 설정 - 이전 과정을 그대로 따라오셨다면, dock..