
내일배움캠프에서 진행하는 최종 프로젝트 기간이 시작됐다. 프로젝트를 기획 내용, 아키텍처를 도입하게 된 이유와 그에 대한 자세한 설명 등에 대해 글을 작성해봤다.

MPV 기능으로 추천 및 추천 취소 기능을 구현하고, 그 과정에서 겪었던 1차 캐시 관련 트러블슈팅에 대해 작성했다.

알림 기능을 구현하기 위해서 했던 고민들과 대안들, 그리고 코드들에 대해 글을 작성해봤다.

코드 리뷰 때 지적 받은 알림 이벤트 객체 생성과 관련된 코드들을 리팩토링했다.

기존의 추천/추천 취소 기능을 추천/비추천 기능으로 변경했다.

MVP 기능 구현 완료 후 튜터님께 코드 리뷰를 받고 해당 내용을 바탕으로 리팩토링을 수행했다.

Spring Boot 환경에서 MongoDB 트랜잭션 적용 및 테스트를 수행했다.

이 프로젝트의 알림 기능은 추후 알림 서버 분리와 분산 시스템을 염두하고 구상했었다. (실제로 scale-out은 적용된 상태다.)그래서 알림 이벤트가 발생하면 외부 메시지 큐(ActiveMQ)를 사용하는 비동기 방식으로 구현했다.지금이야 트래픽이 적어 문제가 없지만,