스프링 @Cacheable 메서드 내부 호출 개선하기(feat. self invocation)
목차 배경 문제 API 개선 요구사항 현재 API 사항 개선된 API 요구사항 첫 번째 시도 두 번째 시도 세 번째 시도 Self-Invocation 해결 방안 (Proxy 생성) ApplicationContext DI @Resource으로 AutoWiring 마무리 배경 클라이언트에서 특정 키워드로 조회하면, 해당 키워드에 해당하는 상품 목록을 받아온다. 쇼핑몰 API 에서 상품을 보내주며, 12개의 상품을 디폴트로 보내준다. 쇼핑몰 API에서 해당 키워드의 상품 재고가 부족하면, 12개 미만으로 응답할 수 있다. 상품의 개수가 9개 미만이면, 재고 보충 notify 를 위해 슬랙봇 메시지가 전송된다. 문제 상품 재고가 부족한 키워드로 api 요청이 계속 들어오면 어떻게 될까요? 매번 api 요청마다 슬랙봇이 전송되기 때문에 굉장히 귀찮은 상황이 벌어집니다. 아래처럼요.
머..멈춰.. 때문에 동일한 키워드로 요청이 들어오더라도 최초 한 번만 슬랙봇 메시지를 전송하고, 그 후부…