실전프로젝트 정리

송민지·2022년 8월 1일
0

실전프로젝트

목록 보기
12/20

프로젝트 소개

아키텍처

담당한 영역


어려웠던점

  • 예약할때 최대한 안되는(막아야하는) 경우의 수 를 생각해야 했다.
    (예를 들면 현재시간보다 이전시간에는 예약을 안되게 하거나, 나뭇잎이 부족하면 예약을 안되게 한다거나)
    원래는 예약은 3시간 전까지만 신청 가능하게 해놨었는데, 그러면 막상 배포하고 사용자들이 당장 화상채팅이 되는지 확인하지 못할것이라는 의견이 있어서 그 예외는 코드에서 삭제했다.

  • 그리고 원래는 날짜도 한글로 해놨었고, 형식도 'n월 n일 n요일'이였는데 이렇게 보내주면 프론트에서 날짜와 시간을 클릭했을때, 예약 여부를 보여줄수 없다며 서버로 보내준 값 그대로 다시 프론트로 보내달라는 요청이 있었다.
    그래서 데이터를 가공한 코드들을 지우고, 온 값 그대로 db에 저장했다가 요청한 값을 다시 보내주었다. (원래는 map써서 들어온 값 그대로 보내주려 했는데 잘 안됐다)

  • MySQL을 썼지만 관계설정은 하지 않았다.
    type이 integer인 userId를 pk로 사용했는데, 내가 받야야 되는건 string type인 blogId였다.
    pk값과 받아야 되는 값이 달라 오류가 났는데, 배포할때까지는 외래키 제한을 db에서 직접 지우면서 해서 크게 어려운게 없었다.
    문제는 오류가 펑펑 터지는 테스트코드였다.
    광민님이 include를 써서 하는게 어떻겠냐고 하셨지만, 내가 하면 오류가 나고 배포할때까지 시간이 없어 할수없이 관계설정코드를 지웠다. (이 부분은 항해가 끝나도 관계설정후 코드개선을 하려 한다)

  • docker로 서버를 열어봤다. 블로그도 많이 보고, 유튜브(사랑해요 엘리쌤)도 보고 다양하게 찾아봤고, 전부 다양하게 docker를 구동하고 있는걸 봤다.
    그리고 든 생각은 docker를 구동하는 방법은 참 다양하구나 였다.

  • NGINX인증은 실패했다. NGINX도입을 검색하면 다양한 사람들이 다양한 방법으로 인증한다는걸 알게되었다. 하지만, 어느방법을 시도해도 NGINX는 설정되지 않았다.
    결국 선우님이 며칠을 고생하다 광민님이 주신 글을 참고해서 NGINX를 설정할 수 있었다.

많이 아쉽다.

백엔드가 4명이여서 업무분담도 애매했고, 인프라는 지금도 이해되지 않는다. 도커역시 검색해서 이렇게 하면 된다하길래 써본 거지 제대로 아는게 없다.

github action도 써본적이 없고 ci-cd역시 잘 모른다.
공부하고 알아봐야 할건 많은데, 어떤걸 해야 될지 모르겠다.

우선 python으로 알고리즘기초와 자료구조를 공부해야겠다.

profile
기록하는 일상

0개의 댓글