본문 바로가기

프로젝트/FitTrip12

[FitTrip] DELETE IN을 사용한 배치 처리로 얻을 수 있는 성능 향상 DELETE시 IN 사용트러블 슈팅에서 DELETE IN 사용에 관한 내용을 다뤘다.하지만, 해당 작업이 실제로 의미가 있는지가 중요하다. 따라서, 직접 서비스 구동시 DB에 데이터를 추가하여 성능이 얼마나 향상되었는지 확인하기 위한 작업을 진행했다. 작업 대상으로 삼은 API는 채널 삭제 API이다.포럼 채널에 속해있는 포럼 100개각 포럼과 연관되어 있는 파일 100개포럼 100개, 파일 10000개로 구성  서비스 구동시 DB Init 코드@Slf4j@Component@RequiredArgsConstructorpublic class BatchTest { private final UserRepository userRepository; private final ServerRepository .. 2024. 7. 2.
[커뮤니티 서비스] 커뮤니티 서비스 기능정리 구현한 커뮤니티 서비스의 기능 커뮤니티 서비스서버서버서버 CREATE서버 프로필, 서버 이름, 서버 설명서버 READ서버 조회시 보낼 데이터서버에 속해 있는 유저/채널/카테고리 정보서버 조회 시점 유저의 채널 위치 정보유저상태(온/오프라인) → 상태관리 서비스에 요청처음 제공된 채널의 채팅 데이터 → 채팅 서비스에 요청서버 UPDATE서버 프로필, 오픈 서버, 서버 이름, 서버 설명 변경서버 DELETE프로필 삭제, 서버 삭제, 서버에 속한 유저 삭제서버 기능서버에 속한 유저/채널/카테고리 관리서버 초대서버마다 고유의 랜덤 초대코드(1일 유지)공개서버 초대코드 필요X, 비공개서버 초대코드 필요O유저마다의 서버 목록 제공서버마다의 유저 닉네임 조정채널채널 CREATE포럼 채널음성 채널채팅 채널채널 READ.. 2024. 6. 29.
[트러블슈팅] 각 서비스의 로그 확인을 위한 로깅 시스템 구축 📄 Describe 상황프론트와 백엔드 연동간 다양한 오류가 발생하였습니다.발생한 오류가 프론트단의 문제인지 백엔드단의 문제를 확인하는 것은 서로의 로그를 비교해보아야 확실히 알 수 있었습니다. 하지만 당시 서버에 접근하여 컨테이너 로그를 확인하는 것이 가능한 사람은 배포를 맡은 저만 가능했기에제가 컴퓨터 앞에 있지 않는 상황에서는 프론트분들이 로그 확인이 불가능했습니다. 따라서, 실시간으로 백엔드 서비스의 로그를 확인할 수 있는 방법이 필요했습니다. 작업 내용위 문제의 해결방안으로 로그 실시간 모니터링을 위한 로깅 시스템을 구축하기로 하였고해당 시스템 구축을 위해 Grafana, Loki, Promtail를 사용하였습니다. Grafana는 수집한 metrics 시각화하기 위한 도구로 로그도 시각화 할.. 2024. 6. 26.
[트러블슈팅] 오픈바이두 클라이언트 연결 오류 해결 과정 🐞 버그 설명 상황OPENVIDU가 로컬에서는 되지만 다른 클라이언트에서는 되지 않는 오류가 발생했다. 자신의 캠은 연결이 되지만, 정작 다른 클라이언트와는 통신이 되지 않는 문제였다. 버그 해결 팀원분이 관련하여 찾아보였고 결국 도커 이미지가 잘못되었다는 것을 확인하였다.우리가 사용한 OPENVIDU 도커 이미지는 openvidu/openvidu-dev:2.29.0였다. 하지만, 해당 이미지는 적혀있는데로 dev를 위한 버전이였어서 실제 배포시에는 동작이 되지 않았다.그래서, 실제 배포시 OPENVIDU를 사용하기 위한 방법을 찾아보았고, 직접 설치를 진행해야 된다는 사실을 깨닫게 되었다. OPENVIDU를 설치하는 방법은 다음 명령어를 사용하면 되었다.curl | bash  참고한 블로그https.. 2024. 6. 25.