안녕하세요!이전에 언급했던 것처럼 Now, Here 글로 다시 찾아왔습니다.현재 출시가 얼마 남지 않았고, 대부분의 기능 구현은 완료한 상태입니다.그래서 성능 테스트를 통해 웹 서비스의 성능을 측정하고, 병목지점을 찾아 성능 개선을 이루는 경험을 공유합니다.😊 성능 테스트 가이드 시리즈😊 / 클릭 시 이동1. 성능 테스트_성능 목표 잡기2. 성능 테스트_HikariCP의 연결 최대 풀 설정3. 성능 테스트_Caffeine 캐시 설정 및 적용4. 성능 테스트_인덱싱과 트랜잭션 관리 최적화5. 성능 테스트_하드웨어 리소스 업그레이드성능 목표 잡기 성능이 좋다는 의미는 무엇인가?보통 웹 성능이 좋다는 의미는 웹사이트에 접속했을 때 이들이 원하는 콘텐츠가 로딩될 때까지 걸리는Average response t..
프로젝트
오랜만에 블로그에 글을 씁니다! 요즘 취업 준비로 바쁘게 지내고 있지만, 이전보다 더 개발에 몰입하며 지내서 만족하며 열심히 살고 있습니다. 😄이번 글에서는 10월에 있을 대학교 축제를 겨냥해 기획하고 개발 중인 매칭 웹앱 플랫폼 "Now, Here"의 백엔드 개발 과정에서 고민했던 내용을 공유하려 합니다. 특히, 이번에는 실시간 매칭 알고리즘과 데이터 기반 의사결정 방식을 도입한 경험을 소개하려고 합니다. 앞으로 3~4개의 Now, Here 관련 글을 올릴 예정이니 많은 관심 부탁드립니다! 🫡 Situation과거에 제가 TrueEcho를 개발하면서 유저들 사이에서 친구를 추천하는 FOF 알고리즘을 구현한 적이 있습니다.관련 글 링크 당시에는 친구의 친구들을 해시맵 형태로 저장하여 중복되는 친구가 ..
시험 끝났는데 오히려 더 바쁜 일정이 시작된 요즘..! 뭔가 빈둥거리면 안 되는데 그러고 있어서 살짝 위기감을 느끼는 중입니다.오늘 작성할 글은 프로젝트를 개발하던 중에, User들 간에 친구 추천을 할 때 어떤 알고리즘을 사용해서 하면 좋을지 고민하고 구현한 내용입니다.그렇게 어려운 알고리즘은 아니지만! 좋게 봐주시면 감사하겠습니다. 그리고 피드백은 항상 환영입니다 😎FOF 알고리즘이란?fof 알고리즘이란, 말 그대로 Friends Of Friends 알고리즘으로 친구의 친구를 추천해 주는 알고리즘입니다.사람들이 가장 많이 사용하는 SNS인 인스타그램이나 페이스북, 틱톡 등 다양한 SNS에서 사용하는 알고리즘으로 알고 있는데요!이를 직접 구현하기 위해서 고민한 내용을 담았습니다. 구현 내용단순히 친구..
약 1시간 정도 끙끙대다 결국 풀어낸 em.remove의 비밀..! 지금 바로 공개합니다. 문제 상황 로직 설명 문제를 말씀드리기 앞서 저희 프로젝트의 User(유저)와 Suspended User(탈퇴가 유예된 유저) 간의 로직을 설명해 드리겠습니다. 우선 회원 탈퇴 요청을 하면 User 테이블의 user를 Suspended User 테이블에도 생성합니다. 그리고 7일간의 유예 기간을 주는데요, 7일간 다시 로그인(탈퇴 취소)을 하지 않으면 Suspended User 테이블과 User 테이블에서 사라짐과 동시에 회원 탈퇴가 취소됩니다. 하지만 만약 탈퇴 요청을 하고 7일 이내에 접속한다면? Supsended User 테이블에서 삭제되고 탈퇴가 됩니다. 에러 설명 바로 여기서 에러가 발생했는데요, 회원 탈..
예 사실 극악무도하게 해결하진 않았지만실제 프로젝트를 진행하는 중에 쿼리가 무지막지하게 나오는 어떠한 문제를 마주했고,(과장이 약간 섞인) 66.7퍼센트의 성능 개선을 어떻게 했는지,결국 단서를 찾아내 해결한 과정을 정리한 글입니다.비슷한 경험이 있는 분들에게는 도움이 될 것 같아 글을 작성합니다!(언제든 틀린 부분 있다면 알려주시면 감사하겠습니다)문제 상황현재 TrueEcho라는 이름의 졸업 프로젝트 겸 ~ 캡스톤 디자인 겸 ~ 실제 앱으로 출시해 유저들을 모아볼 나름 큰 프로젝트를 백엔드를 맡아서 진행 중입니다. 그러던 중에 User 엔티티를 수정하고 이를 조회하는 로직을 작성하던 중이었습니다.이때, 위 스크린샷과 같이 어떤 api를 통해서 User 엔티티를 호출해도 항상 다른 엔티티 2개(NotiT..
오랜만에 프로젝트 소개를 주제로 블로그 글을 작성한다. 이 프로젝트 또한 학기 중에 진행한 프로젝트 새롭게 진행하고 작성하는 글은 아니지만 당시 최선을 다해서 프로젝트를 진행했고, 결국 학점 A+도 받았다. 데이터 분석/선형대수학/AI에 대해서는 아직 많이 부족하고 진로로 희망하는 분야도 아니지만 나름 재밌는 주제의 프로젝트이므로 글을 통해 정리한다. 프로젝트 소개 Pandas/Numpy 등의 파이썬 라이브러리를 이용해 고양시의 어느 행정동에서 고깃집을 차리면 매출 대박이 날 확률이 가장 높을 지에 대해서 데이터 분석하고 결과를 도출한 프로젝트이다. 주제 선정 이유 지인의 조부모님께서 고깃집을 운영 중 -> 점포를 확장하실 계획 중이셨다. 실생활에서 해결해야 할 것을 찾고 이를 해결하는 프로젝트를 진행하..