-
Notifications
You must be signed in to change notification settings - Fork 1
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
✨ Feat : 멀티모듈 적용 및 FCM 구현 #168
Conversation
@@ -29,7 +31,7 @@ public List<Briefing> findBriefings(BriefingRequestParam.BriefingPreviewListPara | |||
briefingRepository.findAllByTypeAndCreatedAtBetweenOrderByRanks( | |||
params.getType(), startDateTime, endDateTime); | |||
if (briefingList.isEmpty()) { | |||
briefingList = | |||
briefingList = null; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
해당부분 null 검토해주세요
|
||
public void subScribeDailyPush(MemberRequest.ToggleDailyPushAlarmDTO request, Member member){ | ||
|
||
if(request.getPermit().equals(1)){ |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
매직넘버 1을 의미를 담는 상수로 분리하는 게 좋아보입니다!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
고생하셨습니다!
🚀 개요
멀티모듈의 적용
우선적으로 Entity와 공통적인 API Response에 대한 모듈, 그리고 외부 API 호출에 대한 모듈을 묶고
해당 모듈을 core 패키지로 묶었습니다.
당장은 허술하나, 궁극적인 목표는 core 패키지를 라이브러리 형태로 사용하는 것입니다.
FCM과 Spring Batch 모듈 자체를 만들었으나, 업데이트 일정을 위해 당장은 API 모듈에 위치시켰습니다.
추후 FCM 서비스를 하나의 모듈로 독립시키고 더 나아가서 별개의 EC2에 배포하는 아키텍처 개편을 고려 중입니다.
스프링 배치의 단편적인 활용
당장은 FCM의 토픽 알림 기능을 사용하기 때문에 Spring Batch를 통해 DB를 조회하지 않습니다.
다만, 추후 '일일 베스트 브리핑' 등 자동 집계가 필요한 기능을 위해서 Spring Batch를 도입했습니다.
현재는 스케줄링 기능만 사용합니다.
🔍 변경사항
전체적인 아키텍처
⏳ 작업 내용
📝 논의사항