백엔드 Back-end(6)
-
최종 발표회 트러블 슈팅 정리 및 기술적 의사결정 내용 정리
최종 발표회 트러블 슈팅 정리 및 기술적 의사결정 내용 정리 🔥 트러블 슈팅 멘토님의 중간 내용 피드백을 바탕으로 기존 API의 보완 사항들을 고쳐나가는 트러블 슈팅을 진행하였습니다. ❎ 문자 인증 서비스 서버 병목 현상 해결 문제 상황 setTimeout 함수를 이용한 문자 인증 만료 처리 시 함수의 실행이 안되거나 서버 병목 현상 발생해 실행이 지연되는 현상 발생 이는 인증번호 발급 후 배포가 이루어지는 상황에 대한 고려가 되지 않았고 서버에 큰 부하를 주는 현상 문제 원인 1. 해결 방안 해결방안1. settimeOut 함수를 통한 인증 만료 처리를 그대로 가져가되 에러 처리 철저히하기 기존의 settimeOut 함수를 통한 인증 만료 처리 방식 그대로 가져가는 대신 엄격한 에러처리를 통해 미결 건..
2022.12.12 -
몽고디비 데이터 중복 판단 문제 발생 :: 트러블 슈팅
몽고디비 데이터 중복 판단 문제 :: 트러블 슈팅 Nodejs로 만든 API로 Axios를 이용해 POST 요청을 보내 최종 테스트 중인데 자잘한 버그? 약간 치명적일 수도 있는 버그를 발견해 놀라움을 감추지 못하고 있다. 아래 첨부 사진을 보면 무슨 말인지 알것이다. 문제 상황 /user/signup 으로 데이터를 전송했을 때 성공적으로 데이터 생성 및 성공 코드 반환 이번에는 비슷하지만 중복되지 않는 아이디를 넣고 악시오스 요청을 보내봤다 디비에 중복된 데이터가 없는데도 불구하고 상태코드 400에 '중복된 아이디 입니다' 라는 에러 코드를 반환한다. 몽고디비 자체에서 엄격하게 중복 단어가 들어가면 똑같은 데이터라고 친다고 하자. 그래도 에러 메시지가 들어왔으면 최소 디비에는 값이 들어가면 안되는데 디..
2022.12.07 -
S3 대신 사용할 수 있는 클라우드 저장소들에 대한 고찰 : AWS S3, Cloudinary, 구글 클라우드 서비스
보호되어 있는 글입니다.
2022.11.25 -
MongooseError: Operation users.findOneAndUpdate() buffering timed out after 10000ms 몽구스 에러 해결하기
MongooseError: Operation users.findOneAndUpdate() buffering timed out after 10000ms 해결하기 목차 - 오류 상황 - 오류 메시지 - 오류 원인 - 오류 해결 - 참고 자료 오류 상황 레파지토리 단계에서 테스트 코드를 작성하고 돌려봤는데 버퍼링 타임아웃 몽구스 에러가 발생했다. 처음에는 백엔드에서 자체적으로 디비 부하 테스트를 돌리고 있어서 그런 줄 알았다. 그런데 너무 어이없게도 원인은 다른 곳에 있었다. 오류 메시지 몽구스 에러 발생 : MongooseError: Operation `users.findOneAndUpdate()` buffering timed out after 10000ms at Timeout. at listOnTimeou..
2022.11.18 -
Error: listen EADDRINUSE: address already in use :::3000 에러 해결 하기 | 우분투 서버
address already in use ::: 3000 에러 해결하기 목차 - 오류 상황 - 해결 방안 오류 상황 AWS 우분투 서버에서 노드 프로그램을 돌리려고 명령어를 입력했는데 이런 오류메시지가 떳다. > backend_test@0.0.1 start > node app node:events:491 throw er; // Unhandled 'error' event ^ Error: listen EADDRINUSE: address already in use :::3000 3000번 포트로 무언가 실행되고있기 때문에 노드 프로그램을 3000번 포트로 실행할 수 없다는 말 해결하기 어떤 포트로 무슨 프로그램이 돌아가고 있는지 알아보기 위해 다음 명령어를 실행한다. 방법 1 lsof 명령어 사용해서 pid ..
2022.11.16 -
multer로 이미지 전송하기 feat 서버 부하
multer로 이미지 전 - multer로 서버에 이미지 전송하기 - 클라우드 저장소 사용해 서버 부하 줄이기 s3사용하기 cloudinary 이용하기 1.multer로 서버에 이미지 전송하기 2. 클라우드 저장소 이용하기 하지만 이렇게 그냥 이미지 파일을 받은 족족 서버에다가 쌩으로 박아버리면 서버 부하가 생긴다. 그러면 어떻게 하느냐 바로 클라우드 저장소를 이용하면 된다. 2-1 클라우드 저장소의 대표 얼굴 : S3 먼저 클라우드 저장소하면 딱 떠오르느 s3를 대체할 수 있는 또 다른 클라우드 저장소 cloudinary 사용하기
2022.11.13