Backend/spring boot

서비스 논리 흐름 타 서비스에서 최저가 서비스 호출 (input: keyword) keyword: {prodGrpId,,, }를 조회 Redis에 없다면 Elasticsearch에서 조회하여 prodGrpId 조회 (상위10건) 후 Redis에 저장 prodGrpId: [{prodId, price}, {} ---] 데이터 조회 없다면 Elasticsearch에서 ProdId별 가격조회 후 반환 반환 후 Redis에 ProdId: Price 정보저장 Redis 설치 인스턴스는 AWS EC2 프리티어로 생성할 수 있는 인스턴스를 생성했다. ubuntu이미지이기 때문에 apt-get install redis-server를 통해 레디스를 설치할 수 있다. 기본적으로 6379포트로 설정되어 있다. /etc/red..
여기가 매우 잘 정리되어 있어서 주소를 첨부함. https://devel-repository.tistory.com/50 spring boot 로그백 (logback) 설정 방법 logback은 log4j 프로젝트의 후속 버전으로 log4j 1.x가 중단된 이후 버전을 이어받아 발전시켜 왔다. spring boot는 기본적으로 logback 로깅 시스템을 채택하여 제공한다. logback-spring.xml 작성을 통해서 logb devel-repository.tistory.com 에러 로그만 분리하는 방법에 대한 더 쉬운 설명 https://cl8d.tistory.com/96 [Spring] 에러 로깅하기 - Logback을 사용해서 ERROR 레벨만 파일로 로그를 남겨보자! 🌱 들어가기 전 이번 장바구..
OpenFeign이란? https://spring.io/projects/spring-cloud-openfeign 선언형 REST 클라이언트라고 한다. 보통 스프링에서 다른 서버와 REST 통신을 하고 싶을 땐 RestTemplate이나 WebClient 같은 걸 많이 쓴다. OpenFeign을 사용하면 인터페이스 형태로 RestController 작성하듯이 편하게 REST 통신을 위한 코드를 작성할 수 있다. 그리고 MSA 환경에서 각 FeignClient의 이름을 지정해 사용함으로써 각 서비스 간의 통신을 편하게 할 수 있다는 장점도 있다. 예제 레포 주소 https://github.com/purewater02/Feign 의존성 추가 Spring Initializer를 사용해서 spring-cloud-..
@Async가 동작하기 위해서는 먼저 AsyncConfig를 만들어주어야 한다. @Configuration @EnableAsync public class AsyncConfig { } 비동기로 동작하게 하기 위해 커스텀 쓰레드풀을 만들어 주어야 한다. 기본 쓰레드와, 메세징을 위한 쓰레드를 빈으로 등록하고 각각 이름을 붙여준다. @Configuration public class AppConfig { @Bean(name = "defaultTaskExecutor") public ThreadPoolTaskExecutor defaultTaskExecutor() { ThreadPoolTaskExecutor executor = new ThreadPoolTaskExecutor(); executor.setCorePool..
배치란? 큰 단위의 작업을 일괄 처리 대부분 처리량이 많고 비 실시간성 처리에 사용 대용량 데이터 계산, 정산, 통계, 데이터베이스 변환 등 컴퓨터 자원을 최대로 활용 자원 사용이 낮은 시간대에 배치를 돌리기 배치만 처리하기 위해 사용자가 사용하지 않는 또다른 컴퓨터 자원을 사용 사용자 상호작으로 실행되기 보다는 스케쥴러와 같은 시스템에 의해 실행되는 편. 오전 00시마다 특정 배치 실행, 특정 요일마다 실행 등
Purewater
'Backend/spring boot' 카테고리의 글 목록