///
Search
Duplicate
✏️

기술 멘토링 사전 노트 (1회차)

코드 컨벤션
깃플로우 전략
main : 배포 브랜치
dev : 개발 브랜치
feat branches : 기능 브랜치
2명이상 approve시 병합
커밋시 커밋 메시지 뒤에 이슈번호 달기 (#99)
배포 계획
Git Actions
AWS
이번 주 한 일(할 일)
기획 및 기획 개편
개발 환경 설정
IntelliJ , JDK17, MySQL
팀원 개인
김민선
김한신
박준영
유민아
이외에도 기술적인 방향을 잡기 위한 질문을 정리해두시면 가장 좋습니다!
→ 단, “A는 어떻게 구현하나요”의 질문은 삼가주세요.
→ “A와 B를 알아보았는데, 둘 중 A가 낫다고 판단했는데 맞을까요?”의 식의 고민의 흔적을 담아 질문해주세요.
1.
채팅에 엘라스틱 서치 쓰면 좋을까요??
a.
→ 구체적인 기능과 예시를 들고왔으면 쓰라고 했을텐데 그렇지 않으면 애매하다
b.
억지로 쓰는 이유를 정말 구체적으로 만드는게 좋을 거 같다
c.
검색이나 인덱스 걸기→무조건 좋다
d.
잘쓰고 못쓰고보다 쓰고 안쓰고가 더 중요할 때가 있다 → 면접관한테 이력서를 보여주려면 억지로라도 쓰는게 좋다고 생각한다(뭐라도 눈에 띄자)
e.
억지로 쓰려고 특정 기능을 정하는게 생각보다 쉽지 않다
f.
구체적으로 뭘 할지를 정하고 가라 → 결제할 페이지가 넘어갈때 데이터가 뭐가 넘어가야할지 구체적으로 생각해봐라 나중에 그게 구현이 불가능하다고 밝혀지면? 힘들다
g.
Q.앨라스틱서치를 쓸만큼의 데이터를 어떻게 구하지 그걸 어떻게 만들지
db는 key-value엄청빠른거→ 다른거 가고싶은 회사 오라클이면 그거 별 이유 없으면 MySQL
채팅 db를 Redis로 → 로그아웃이나 컴 끄면 날아간다는 소리가 있음
Redis가 꺼지면 채팅이 날아감
MongoDb,Redis → 키를 알고 할때 검색 빠름, value값이 클때도 좋응ㅁ
문제: 채팅은 구현시 사람들이 채팅방에 입장했을때 빨리 로디오디길 원하니까 쓰는거
영속 저장소로는 절대 쓸 수 없음
MongoDb ㄱㅊ
꺼낸 데이터는 Redis에 넣고 조회 요청이 오면 Redis에서 먼저 찾고 아니면 몽고디비
Redis데이터는 만료시간 2시간 이런식으로 구현
채팅이 오가는동안 데이터 Redis에 갱신, Redis는 수정성능도 ㄱㅊ
Redis는 언제 꺼지는가 : 서비스를 내렸을떄?
채팅서비스는 영속적이어야 한다?
채팅 내용을 날리는건 좀 아쉽다
레디스를 쓰면 멍청한 짓을 많이 하게됨
튜터님의 일화) 입사해서 이벤트를 레디스로 했는데
레디스에서 조회를 먼저 하고 db에 반영하고 레디스에 카운트를 올림
참여여부 선착순이내인지 여부
문제 : 레디스 조회를 하고 db를 한번 갔다오는 순간 레디스 속도는 무용지물
시행착오 기회가 생긴다 네
레디스 먼저 조회하고 카운트 올리고 db에 넣었어야 한다
1.
Java 21
너무 최신 버전이라 호환성을 믿기 힘들어서 Java 17 쓰기로 했다→ 기술적 의사결정에 이렇게 썼는데 타당한 이유 같으신가요?
→ 저렇게만 대답 안하면 된다고 함 ㅜㅜ ㅜㅜ ㅜㅜ ㅜㅜ ㅜㅜ
공부할 입장이고 17버전이 나온지 한참 돼서 레퍼런스가 많아서 좋았다
→ 호환성 이슈를 겪은 서치 결과나 경험이 필요하다 저렇게 말하려면
→8,11,17 이전이면 물어볼거같은데 저건 안 물어볼 거 같다
프론트단
→ 1. ajax/thymeleaf/react공부해서 구현하기
관점에 따라 나눠야한다
thymneleaf랑 ajax로 할거면 restApi로
vue → vue.js 문법이 좀 타임리프스럽다?
react는 좀 힘들것?
채팅 구현 고려시 ) thyneleaf로 대충 하고 시간을 안 쓰는 것을 더 추천한다
대충 리서치 해보고 제일 시간 안 걸릴 거 같은걸로 해라
vue는 장기적인 관점에서 시간을 아낌
소켓을 열면 클라이언트 라이브러리는 vue나 react에 붙이기가 더 쉬울 것
기준은 시간짧은거
postman보다 좀 더 나은수준으로는 출력 색도 넣지 말자
공대생 ppt st
숙제: 멘토링 결과 다음 주까지 해올 일
팀 전체 (리더와 부리더님께서 필두로 정리해 주세요.)
react/vue/ajax+thymeleaf 리서치하기 (제일 쉽고 시간 짧게 걸릴 것 같은것 정하기)
가져올 수 있는 템플릿이 vue나 react가 많다
처음할때는 ajax/thynmeleaf가 빠르긴 하지만 …
암튼 정ㅇ해보기
채팅 끝났을시 어떤 api로 채팅 내역을 영속화 할 것이다 → 핵심기능들은 api명세랑 erd도 포함된 시나리오 작성
주문기록 테이블 링크를 건다든지 한다, 엣지케이스를 시나리오 단계마다 따져보기
한사람이 단점 장점 참고할만한 코드 구한거 이거 깔면 어느정도 시간 안에 될거같다
한명이 시나리오 보충
한명이 엘라스틱서치를 사용해보자 했을때 새로운 기능 구체적으로 기획을 가져오고
→ 거기서 의견을 나누거나 피드백을 받아라
제일 중요한거는 정리를 잘 해봐라 → 노션에다가
팀원 개인별로 작성해 주세요.
김민선: 지도랑 채팅 관련 프론트 뭐가 좋은지/ 엘라스틱서치 만약 쓴다면 어떻게 어디다 쓸건지 시나리오 보충
김한신: 시나리오 보충, 프론트 조사
유민아: 시나리오 보충, 프론트 조사
박준영: 시나리오 보충, 프론트 조사,채팅 관련 db 뭐가 좋은지, 어떻게 쓸지