결제 알림 채널별 발송
목차
feat: Pay 알림 헬퍼 클래스 추가
알림 시스템 구현 작업임. 거래 이벤트마다 적절한 채널로 알림을 발송하는 구조를 잡았음.
알림 채널
| 채널 | 용도 | 특징 |
|---|---|---|
| 앱 PUSH | 실시간 거래 알림 | FCM 사용 |
| SMS | 중요 인증/보안 | 비용 발생 |
| 이메일 | 정산/명세서 | 첨부파일 가능 |
| 인앱 알림 | 서비스 공지 | 로그인 후 확인 |
PayNotificationHelper
public class PayNotificationHelper {
public void notifyCharge(Member member, long amount) {
String msg = String.format("[입금] %s원 입금", NumberFormat.format(amount));
pushUtil.send(member.getFcmToken(), msg);
notificationUtil.save(member.getSn(), "CHARGE", msg);
}
}
알림 발송 실패 처리
PUSH 발송 실패 시 인앱 알림으로 폴백. 이메일 실패 시 재시도 큐에 넣음. 알림 이력은 30일 보관함.
개발 원칙 정리
이 작업을 진행하면서 재확인한 원칙들:
작은 커밋: 변경 단위를 작게 유지해서 코드 리뷰와 롤백이 쉽게.
테스트 먼저: 변경 전 현재 동작을 파악하고, 변경 후 동일하게 동작하는지 확인.
문서 동기화: 코드가 바뀌면 관련 주석과 문서도 같이 업데이트.
| 원칙 | 이유 |
|---|---|
| 단일 책임 | 하나의 함수/클래스는 하나의 역할만 |
| 명시적 코드 | 영리한 코드보다 읽기 쉬운 코드 |
| 실패 우선 처리 | happy path보다 에러 케이스 먼저 설계 |
끝
댓글 0
첫 댓글 달아줘.