profile
Leave your comfort zone
post-thumbnail

Django | Locust 부하테스트와 Redis 적용

쿼리 최적화를 통해 하나의 요청에 60초가 걸리던 것을 4초로 단축시켰다. 하지만 여전히 오래 걸린다. locust를 사용해서 서버가 과연 몇 명의 접속자를 처리할 수 있을지 부하테스트해보려고 한다. 또한, redis를 적용해서 성능을 개선하고 테스트해보겠다.

2021년 5월 11일
·
0개의 댓글
·
post-thumbnail

Django | Prefetch 객체, annotate 활용하여 쿼리 최적화하기

2차 프로젝트를 마무리하면서 개선하고 싶었던 부분이 메모리 캐싱을 통한 성능 향상이었다. 프로젝트 전체적인 소스코드를 리팩토링하면서 장고에서 메모리 캐싱을 하기 위해 일반적으로 사용하는 prefetch_related에 더해 Prefetch 객체의 적용법을 알게 되었다

2021년 5월 6일
·
0개의 댓글
·
post-thumbnail

Docker 배포하기

https://docker.com 사이트에 접속해서 회원가입을 한다. 가입할때 등록한 ID(not email)는 잘 기억해둔다.윈도우/ 맥 사용자는 https://docker.com 에 접속해서 Get Started 버튼을 누르면 나오는 페이지에서 도

2021년 5월 4일
·
0개의 댓글
·
post-thumbnail

NestJS | AWS S3 이미지 업로드

NestJS로 AWS S3에 여러 개의 이미지를 업로드하는 기능을 구현해보자.AWS S3 버킷을 만들어 준다. 버킷 만드는 방법을 설명해놓은 곳이 많으니 직접 찾아서 만들면 된다. 개인적으로는 이 블로그를 참고했다. AWS S3를 NestJS에서 적용하는 코드를 찾아보

2021년 4월 15일
·
1개의 댓글
·
post-thumbnail

NestJS | CORS 설정

프론트에서 난 에러.. > Access to XMLHttpRequest at ‘http://52.78.224.29:3000/shipment’ from origin ‘http://localhost:3000’ has been blocked by CORS policy: R

2021년 3월 31일
·
0개의 댓글
·
post-thumbnail

NestJS | forever로 서버 백그라운드 실행

NestJS 서버를 백그라운드로 실행해보려고 한다. 이전 Django 프로젝트에서는 nohup과 gunicorn을 이용했었는데, NestJS에서는 어떤 프로그램을 이용하면 좋을까? 찾아보니 node 계열에서 사용하는 모듈은 forever, pm2, nodemon

2021년 3월 29일
·
0개의 댓글
·
post-thumbnail

NestJS | TypeORM, Mysql 연동하기

NestJS에서 TypeORM, Mysql을 사용하는 방법에 대해 알아보자. nest new 프로젝트명 명령어로 프로젝트를 생성하면 여러 파일들이 만들어진다. 그 중 app.module.ts 파일을 기억해두자. > NestJS 초기세팅에 대해 자세히 알고 싶다면 이

2021년 3월 27일
·
0개의 댓글
·
post-thumbnail

NestJS | API 만들기(4) - Testing

package.json 파일을 보면 테스팅과 관련된 스크립트가 5가지 정도 있다. jest는 자바스크립트를 아주 쉽게 테스팅하는 npm 패키지이다. NestJS가 세팅을 다 해뒀다. 지금까지 생성한 파일들을 보면 파일명 뒤에 .spec.ts가 붙은 파일들이 있다.

2021년 3월 27일
·
0개의 댓글
·
post-thumbnail

NestJS | API 만들기(3) - Controller, Service, Module, DTO

src 폴더에 main.ts와 app.module.ts 파일만 남겨두고, 나머지는 다 지워버리자. app.module.ts 파일에서도 필요없는 것들을 삭제한다. controller nest g co 커맨드로 새로운 controller를 생성한다. 이름은 movies

2021년 3월 22일
·
2개의 댓글
·
post-thumbnail

NestJS | API 만들기(2) - 구조 이해하기

NestJS는 우리를 위해 이미 만들어진 기능들을 제공한다. 그래서 프로젝트를 생성하면 여러 파일들이 자동적으로 생성된다. 우선 다 살펴볼 필요는 없고 가장 중요한 src 폴더를 살펴보자. main.ts 모든 프로젝트는 main.ts을 무조건 가진다

2021년 3월 20일
·
0개의 댓글
·
post-thumbnail

JavaScript | 객체, 파이썬과 비교하며 배우기

"자바스크립트는 객체기반의 스크립트 언어이다." "파이썬은 객체지향 언어이다." 파이썬을 먼저 접하다보니, 자바스크립트에서 말하는 '객체'라는 용어가 헷갈렸다. 이 참에 확실히 정리하고 넘어가자! 결론부터 말하자면 파이썬의 객체와 자바스크립트의 객체는 같은 개념이다

2021년 3월 20일
·
0개의 댓글
·
post-thumbnail

NestJS | API 만들기(1) - 초기 세팅

NestJS 프로젝트를 시작하기 전 아래 3가지 프로그램을 설치하자. - node.js - visual studio code - insomnia core (E2E 테스트용) vscode는 원래 사용하던 에디터, insomnia는 postman 등으로 대체가능하다.

2021년 3월 20일
·
0개의 댓글
·
post-thumbnail

JavaScript | callback, promise, async 비교 예제

flow 사용자에게 id, password 입력 받아옴. 로그인 시도, 로그인 성공하면 로그인한 사용자의 id를 받아옴 그 id로 역할을 요청해서 받아옴. 받아와서 사용자의 object를 출력 callback 콜백 지옥.. promise async, await

2021년 3월 20일
·
0개의 댓글
·
post-thumbnail

Docker

AWS를 이용해서 배포를 하는 것은 옛날 방식이다. 지금은 Docker와 같은 새로운 infra structure를 이용한다. 실무에서는 Docker를 많이 쓴다. 도커는 Container Virtual Machine Servie이다. 컨테이너 가상화 서비스가상화 기술

2021년 3월 13일
·
0개의 댓글
·
post-thumbnail

E2E, Integration, Unit test

크롬 브라우저를 띄운다음에 내가 만든 페이지로 들어가서 의도한 대로 기능이 동작하는지 테스트하는 방법Manual Testing은 실행하기 쉽다는 장점이 있지만 비용이 많이 들고 부정확하며 실행 시간이 오래 걸린다. 자동화 할 수 있지만 UI Testing은 자동화 하기

2021년 3월 13일
·
0개의 댓글
·
post-thumbnail

> Wecode 2차 프로젝트 회고록 - StockX 클론 ShockX

위코드에서의 두 번째 프로젝트가 끝났다. StockX 사이트는 프로젝트 발표할 때부터 재미있는 사이트라고 생각했는데, 클론할 수 있어서 감사했다. 내가 만약 신발 마니아라면 애용하고 싶을 정도로 잘 만든 사이트다. 또, 두 번 모두 좋은 팀원들과 함께해서 미래에 있을

2021년 3월 13일
·
12개의 댓글
·
post-thumbnail

StockX 사이트 분석과 모델링

StockX 사이트는 신발, 옷 등 다양한 패션 아이템을 resell할 수 있는 경매 사이트이다. 한 명의 유저가 구매자가 될 수도 있고 판매자가 될 수 있다.어떤 상품을 특정 가격에 구매하기 원한다면 'bid'를 할 수 있다. 경매에서 입찰한다고 생각하면 된다.

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

Git | Git rabase

두 개의 브랜치를 병합하기 위한 방법으로 Merge와 Rebase가 있다.merge를 사용하게 되면 merge commit이 안 생겨서 commit history가 더러워진다. rebase로 commit history를 조작하여 깔끔하게 관리한다. branch에서 작업

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

Django | ORM과 QuerySet

ORM(Object Relation Mapper) 관계형 데이터베이스의 내용을 객체로 변환해서 어플리케이션 소스코드에서 직접 객체를 조작할 수 있도록 구성. ORM을 사용해서 개발자는 데이터베이스를 조작하는데 SQL을 사용하지 않고 직접 객체를 사용할 수 있다.

2021년 3월 1일
·
0개의 댓글
·
post-thumbnail

Django | 필터링 뽀개기! if문, 딕셔너리, Q 객체 활용

장고에서 필터링 기능을 구현할 수 있는 방법에는 크게 3가지 방법이 있다. if문을 이용하는 방법, 딕셔너리를 이용하는 방법, Q 객체를 이용하는 방법이다. 오늘의 집을 예시로 해서 3가지 방법을 각각 구현해보도록 하겠다. 오늘의 집에서는 다양한 조건을 한 번에 적

2021년 2월 28일
·
0개의 댓글
·