profile
개발자로 크는 중

Django REST Framework 뽀개기 3

그 동안 작성해왔던 API는 누가 어떤 액션을 취하는지에 대한 제약사항이 따로 없었다. 아래와 같이 인증, 허가와 관련된 몇 가지 조건들이 포함된 기능들을 추가해보자.코드 스니펫은 항상 작성자와 연관되어 있다.인증된 사용자만 스니펫을 생성할 수 있다.특정 스니펫은 작성

2020년 5월 25일
·
0개의 댓글

Django REST Framework 뽀개기 2

FBV가 아닌 CBV를 이용해 API views를 작성할 수도 있다. 공통적인 함수를 재사용할 수 있고, 코드를 DRY 정책을 따르도록 하는 강력한 패턴이다.DRY: Don't Repeat Yourself.기존의 FBV로 구현한 API views를 CBV로 리팩토링해보

2020년 5월 25일
·
0개의 댓글

Flask + Nginx + Gunicorn (2/3)

이전 단계에서 Nginx 서버를 구동하는 방법을 다뤘고, 이번 포스트에서는 Gunicorn을 설정해보고자 한다. 맨 아래에 걸어둔 링크를 참조하여 실습 및 문서를 작성했다.그 동안 작업해 온 프로젝트로 테스트해보려 했지만 EC2에서는 컨테이너 단위로만 배포하고 있었기

2020년 5월 22일
·
0개의 댓글

Flask + Nginx + Gunicorn (1/3)

Green Unicorn의 줄임말로서 Ruby 진영의 Unicorn에서 포팅된 Unix 전용 파이썬 WSGI HTTP 서버이다. Gunicorn 팀에서 Nginx와 함께 사용하도록 권장하고 있다.8000번 포트로 구동되고 의존성이 없으며, Nginx는 일반적으로 리버스

2020년 5월 22일
·
0개의 댓글

Vue.js

Vue.js 학습한 내용을 키워드 단위로 정리화면에 표시되는 값과 프레임워크의 모델 데이터가 동시에 변경됨Angular항상 상위 컴포넌트에서 하위 컴포넌트로 데이터 전달Reactel 속성과 밀접한 관계각 라이프 사이클 속성에서 실행되는 커스텀 로직@ beforeCrea

2020년 4월 26일
·
0개의 댓글
post-thumbnail

Django REST Framework 뽀개기 1

글을 작성하지는 않았지만 Django REST Framework(DRF) 공식 문서의 튜토리얼을 따라서 간단한 ModelSerializer를 사용하여 API를 구축해보았다. 단순 JSON 데이터를 입력, 출력하는 것을 넘어 이번에는 DRF의 핵심 기능을 파헤쳐보고자 한

2020년 3월 22일
·
0개의 댓글

Celery 첫 걸음마 떼기 (2/2)

태스크의 상태를 추적하기 위해서는 그 상태를 어딘가로 보내거나 저장해야 한다. SQLAlchemy나 Django ORM, Memcached, Redis, RPC(RabbitMQ/AMQP) 정도의 result backend 선택지들이 있고 자체적으로 정의하여 사용할 수도

2020년 3월 8일
·
1개의 댓글

Celery 첫 걸음마 떼기 (1/2)

지난 포스트를 작성하면서 Celery가 무엇에 쓰는 물건인지를 간략하게 개요 성격으로 알아보았다. 이번 포스트에서는 실제 Python 코드를 작성하면서 Celery 사용법을 익히고 각 브로커에 대해 더 자세하게 다룰 것이다.Celery 공식 문서를 번역하여 작성하였다.

2020년 3월 7일
·
0개의 댓글
post-thumbnail

Celery

Task Queue란? Task Queue는 스레드 또는 머신에 작업을 분산시키기 위한 메커니즘이다. task라는 하나의 작업 단위를 입력으로 받는다. 전담 워커 프로세스는 새로운 작업을 수행하기 위해 태스크 큐를 지속적으로 모니터링한다. Celery는 보통 클라이언

2020년 3월 7일
·
0개의 댓글
post-thumbnail

Keep-Alive

프로젝트의 gunicorn.conf 내용을 보다가 keepalive 값이 있어서 찾아보게 되었다. 프로젝트 참여 전, overview 시간에 간단히 들은 적이 있어서 용도는 대강 감이 약간 오는데 관련 문서를 번역도 해보면서 좀 더 자세하게 알아보기로 했다. 번역 글이

2020년 3월 7일
·
0개의 댓글

Dockernize MySQL

매번 MySQL 계정 및 데이터베이스를 설정하는 게 귀찮아 GitHub에 올렸던 적이 있다. 이제 데이터 쌓는 것까지 너무 귀찮아서 데이터까지 통째로 포함하여 Docker 컨테이너를 pull/push하려고 한다.일단 필자의 Docker Hub에 이미지 올렸던 경험은 있

2020년 3월 1일
·
0개의 댓글

Python - 모듈 import

components라는 동일한 디렉토리의 모듈을 import하는 과정에서 수시로 경고와 에러를 만나고 있다. import 관련 문서를 참고 및 일부 번역하면서 정리해보고자 한다.위와 같이 모듈을 import한다고 가정했을 때, Python은 아래의 순서대로 모듈을 찾는

2020년 3월 1일
·
0개의 댓글

Python - SyntaxError: 'return' outside function

날씨를 받아오는 모듈에서 위도, 경도가 필요하여 location_getter 모듈에서 위도, 경도를 리턴해주는 로직으로 짜고 있었는데 아래와 같은 에러가 발생했다.직역하면 함수 외부에서 return문을 사용해서 발생한 에러, 즉 return문은 함수 안에서만 사용할 수

2020년 2월 29일
·
0개의 댓글

devpi server로 PyPI mirror 서버 구축

devpi는 궁극적으로 프로덕션과 같은 외부 환경에 패키지를 배포하기 전에 개발 단계에서 사용자와 개발자 간 패키지를 공유하기 위한 메커니즘을 가진다. 또한 PyPI에 빠르고 신뢰할 만한 패키지 캐시를 제공하는 툴이다. devpi를 활용하여 PyPI가 다운되어도 전혀

2020년 2월 23일
·
0개의 댓글

검색 엔진 최적화 (Search Engine Optimization, SEO)

http://www.bloter.net/archives/309882상기 포스트을 토대로 학습한 내용과 개인적인 견해를 담아 글을 작성하고자 한다.진행 중인 프로젝트의 프론트엔드 서버 개발 외에 SEO라는 핵심 과제가 추가적으로 있다. 생전 처음 들어보는 용어인

2020년 2월 23일
·
0개의 댓글

Logging하는 습관

학습 레벨이 아닌 Production 레벨의 개발자의 역할을 하게 되면 로깅은 필수, 아니 몸에 배어 있어야 한다. 이해관계자 간 또는 협업 개발자들과의 의견 충돌, 이슈 발생 등의 상황에서의 근거는 로그 밖에 없기 때문이다.주로 로그의 raw 데이터를 남긴다기보다는

2020년 2월 23일
·
0개의 댓글

Python - 현재 위치 좌표 알아내기

OpenWeatherMap API로 현재 위치의 날씨 데이터를 가져 오려면 위도, 경도 데이터가 필요하다. 예전에 React Native로 날씨 정보 샘플 앱을 만들었을 땐 Expo의 expo-location 라이브러리로 쉽게 가져올 수 있었는데, Python에서는 아

2020년 2월 23일
·
0개의 댓글

Python - dotenv 심기

Telegram 봇에 메시지를 보내고 위치도 전송해봤다. 그 과정에서 Telegram 토큰을 변수에 담아서 사용했는데 코드 상에서 노출되었기 때문에 보안상 굉장히 좋지 않다.https://pypi.org/project/python-dotenv/https&#x3

2020년 2월 23일
·
0개의 댓글
post-thumbnail

Python - Telegram 봇 만들기

꽤 오래 전부터 상상만 해왔던 토이 프로젝트를 지난 주에야 비로소 시작했다. 이 정도로 제대로 진행해보는 개인 프로젝트는 처음이라 시작은 미미하게 해보려 한다. 큰 흐름은 텔레그램 봇을 통해 특정 조건에서 알림을 날리는 식이다. 파이썬으로 개발하고 엔드포인트는 텔레그

2020년 2월 22일
·
0개의 댓글

Docker 개요

Docker를 그렇게 많이 테스트해보고 사용해봤지만 정작 등장 배경과 개념 등 기초 지식에 대해 명확하게 아는 것이 별로 없었다. 뜬구름 잡기 식으로 배웠기 때문에 기초가 탄탄하지 않아서 이번 기회에 초석을 다져보고자 한다. Docker는 시스템 가상화의 일종으로 최

2019년 12월 29일
·
0개의 댓글