django(5)
-
k8s deployment에 sidecar 적용해보기
대부분의 pod는 1 pod = 1 container가 기본이나 동작 방식이나 응용 방식에 따라서 1pod안에 여러 개의 container를 두는 경우가 있다. 이러한 경우를 sidecar라고 하며 아래의 구조와 같다. 그냥 nginx를 별도 pod로 띄우고 micro service를 하면 되지 않을까?? 라는 생각을 잠시 하였으나, web application의 경우 nginx와 통신하기 위해서는 cross domain 문제도 설정해야 하는 이슈 등이 있기 때문에 일단 간편하게 위와 같은 방식으로 사용했다. sidecar를 설정하기 위해서는 아래와 같이 deployment.yaml을 작성해 주면 된다. apiVersion: apps/v1 kind: Deployment metadata: name: pro..
2023.09.25 -
우분투에서 Django와 gunicorn + supervisor + nginx 연동 하기
요즘은 Django + Nginx 가 대세인가 보다. 구글에서 검색해 보니 많은 사람들이 이런 식으로 사용하는 것을 확인해 볼 수 있었다. 이번 기회에 나도 Django와 Nginx를 연동해 보기로 했다. 예전에 Django와 apache 연동할 때는 아파치 모듈 중에 WSGI 모듈을 설치한 다음에 conf 파일을 수정해 주었는데, 요즘은 gunicorn이라는 python package를 많이 사용하는 것 같다. WSGI 서버로는 uWSGI와 gunicorn, Apache/mod-wsgi를 많이 사용하는데, uWSGI 같은 경우에는 고성능 서버 성능을 지니고 있으며, gunicorn 같은 경우에는 보통 수준의 성능이지만 설치와 관리가 간단하다는 장점이 있다. (mod-wsgi는 별로인 걸로...) Dja..
2017.01.04 -
scm(supply chain management) 개발기 -2
Django에서의 PUT 매소드 사용. restful api의 규칙을 명확히 따르기 위하여, 데이터 등록 과정은 POST, 데이터 수정 과정은 PUT, 데이터 삭제 과정은 DELETE 매소드를 사용하기로 하였다.그런데 이게 왠일... Django에서는 PUT과 OPTIONS, DELETE에 대해서 파라미터 값을 따로 저장하지 않는다.(지원하지 않는다고 보는게 더 정확함)하지만 해당 프로토콜 타입이 POST인지 PUT인지 DELETE인지는 명확하게 식별할 수 있으며, 해당 값만 request폼에 저장되어 있지 않는거라 우회하는 방법으로 데이터를 가져올 수 있다. (body 데이터는 가지고 있다는 소리임) from django.http import QueryDict def put_test(request): ..
2014.09.19 -
scm(supply chain management) 개발기 -1
회사에서 프로젝트로 진행한 SCM(Supply Chain Management)에 대한 개발 이력을 남기려고 한다. 개발 환경은 python + Django로 진행하였다. 여러 APP으로 분류 Django에서는 하나의 프로젝트 안에 여러개의 앱을 등록시킬 수가 있다.해서 성격이 다른 앱들은 따로 분류하여 프로젝트를 구성하였다. >> python manage.py startapp test1 >> python manage.py startapp test2>> python manage.py startapp test3 위와 같은 방식으로 앱을 생성하였고 settings.py 파일에 생성된 해당 앱들을 등록하였다. INSTALLED_APPS = ('django.contrib.admin','django.contrib...
2014.09.18 -
[Python] 우분투에서 django mysql과 연동하기
해당 글은 python과 mysql이 설치되어 있다는 가정 하에서 진행합니다. python pip를 통해 django를 설치 합니다.sudo pip install django 설치가 완료되었으면, 제대로 설치되었는지 확인해 봅니다. 쉘에서 django-admin.py 명령을 쳤을 때 명령어 목록이 출력되면 django가 제대로 설치 된 것입니다. 이제 django로 관리할 프로젝트 폴더를 하나 만들고, 해당 폴더로 이동한 후 아래와 같이 입력합니다.$> mkdir testProject $> cd testProject $> django-admin.py startproject testProject 위와 같이 만들면 testProject 안에 testProject라는 폴더가 하나 더 생성이 되고, 해당 폴더 ..
2013.11.08