회고
Image


✅ 진행 상황 점검
Kant
- 담당
- 사용자 도메인 개발(가입 제외)
- 유저 조회 로직
- 파일 시스템 처리 모듈
- 비동기식 이미지 전송 방식 개발
- 구현 예정
- 사용자 정보 편집 아직 안 됨
- 프론트와 협업 하면서 수정
- 탈퇴는? must 아님
- 도메인 지식 심화
- 추가적 이슈
- 이미지 처리(프론트 입장에서)
- 비동기 이미지 처리
- 최적화
Pray
핀포인트 nGrinder 설정
기본 템플릿 사용
알림 도메인(SSE) 구현
직접 페이지 만들어서 실험
프론트 알림 우선순위가 낮아서 연동은 아직 안 함
게시판 도메인 분담 진행.
조회 중심(필터링 다양)
시간이 오래 걸릴 것 같음, 동적 쿼리 구현(QueryDSL)
도메인 엔티티 설계 확정이 늦어서
라이딩 참여 기능
알림과 연동
프론트와 커넥션 관리 손실 시나리오 구현 필요
손실 추가 구현을 안하면, 커넥션 재연결 시 발생한 알림 이벤트들이 누락
멘토님도 pinpoint, nGrinder 사용중
Docker로 올리는 방식도 있음
Scouter 라는 API 툴도 있음
예상 시나리오
Jpa 관련 성능 최적화
Lazy Loading 없이 구현 ⇒ 테스트 ⇒ Lazy Loading, 쿼리 최적화 ⇒ 테스트
실제 성능 최적화가 얼마나 이루어지는지 비교
TPS 중심으로 비교(가장 쉬운 지표이기 때문)
응답 그래프 비교.
Comment : 포스팅을 하다가 알림을 확실히 끝내라. 프론트가 안 되면 자바스크립트 코드를 직접 작성하는 것은 어떨까?
Didi
RidingPost CRUD 도메인 설계
Create API 개발 완료
프론트와 생성 관련 작업 조율중.
예외 처리 관리 구현중.
어려웠던 점(어려움 예상)
도메인이 너무 커서 구현이 늦었다.
검색(QueryDSL) 구현에 난이도가 있을 것 같음.
Bob
- 특정 도메인 담당하진 않음
- 인프라 관련 업무 총괄
- CI /CD 프로세스 도입
- git
- gitflow 사용 목적에 대해 이해함
- release branch
- OAuth에서 문제 발생하여, 지원했음
OAuth 문제 상황 해설
- 로컬에서는 문제 발생하지 않음
- 배포 서버에서만 문제 발생
- OAuth 인가 받으려는 통신 자체가 kakao에서 막히는 것으로 보임
- 응답 코드가 404로 돌아옴(프론트엔드 입장에서)
- 현재 흐름에서는
- 프론트 -> 카카오로 먼저 요청
- 카카오 -> 프론트로 인가 코드 전달
- 여기서 카카오로부터 404 응답
- 프론트 -> 백엔드로 인가코드 전달, 요청 진행
- 이 부분 요청 자체가 이루어지지 않음!
- 일반적으로 Redirect는 프론트의 책임이 아니라 백엔드에서 수행하기는 하는데, 왜 이 방식을 도입하였나?
- 백엔드에서 최종적으로 프론트엔드로 리다이렉트하면서 발생하는
화면 깜박임
을 없애기 위함 - 프론트측 코드가 이 방식으로 많이 진행된 상황이었기 때문
- TODO
- https 도입
- Nginx 이용
- AWS 의존적인 방식을 피하기 위함
- 만약 현재 로그인 문제가 해결된다면, https 이슈는 후순위가 될 것임
- 더 나은 profile 관리
- 일반 profile에 있어서도
- secret에 대해서도
- 500 에러 상황에서 슬랙 알림
Partey
- 담당
- 회원가입 및 시큐리티 설정
- 구현 예정
- 추가 회원가입 기능
- JWT 토큰 만료 기능
- JWT 리프레시 토큰
- 추가적 이슈
- 배포하고 카카오 OAuth요청시 404오류 뜨는 중
- 나중에 확인하고 해결하기
🧐 멘토님 피드백
요구 사항
- 12일까지 최종 구현을 목표로 할 것..
코드 퀄리티
- 코드 관리 습관을 들이지 않을 경우 코드가 요구 사항 변경에 매우 취약해진다.
- 리팩터링을 특정 일자에 미루는 것은 말이 안 된다. 업무 보고 할 때 리팩터링만 했다고 할 것인가?
- 일정에 따라 유연하게 조절하는 노하우가 생겨야 한다.
- 일정이 촉박한데 퀄리티를 몇 시간 동안 따지면서 기능을 구현하는 것 또한 말이 안 됨.
- 리팩터링도 실력이 쌓이면 빠르게 할 수 있다.
- 추상화와 설계도 퀄리티 검증 대상
- 항상 내가 작성하는 코드가 변경에 취약하지 않은 지 생각하면서 작성하자.
- 리팩터링 시나리오 예시
- 기능 수정 작업이 들어올 때, 일정을 생각하고, 리팩터링 각이 나오면 진행한다.
테스트
- 테스트 코드 작성이 숙달되면 빠르게 만들 수 있다.
- 코드가 제대로 작동된다는 자신감을 갖고 구현하는 것이 중요하다.
- TDD까지는 아니더라도, 내가 작성한 핵심 로직에 대한 테스트 코드는 꼭 만들어라.
Https 설정 등 인프라 관련
- AWS 의존 vs nginx로 직접 세팅
- Nginx 추천
- Docker는 필수 사항이 아니다.
Oauth 관련
- OAuth 인증을 과정을 프론트(Authorization Code)와 백(Access Token & 사용자 정보 fetch)이 나눠서 하는 것이 부자연스러워 보인다.
- 백이 전담할 경우 OAuth 인증 로직이 성공적으로 끝나면 특정 프론트 페이지로 redirect 시킴
- 즉 프론트에선 백으로 OAuth관련 로직의 책임을 맡김