본문 바로가기

전체 글

Kotlin Kotest + Spring Boot 적용해보기 https://github.com/KimHyeongi/KotlinSpringboot-Tips 테스트용 서비스 @Service class DicFindService(val dicRepository: DicRepository) { fun findById(id: Long): Dic = checkNotNull(dicRepository.findByIdOrNull(id)) { "검색된 정보가 없습니다." } } 테스트 코드 - Kotest 전역설정 package com.tistory.eclipse4j.domain.persist.dic import io.kotest.core.config.AbstractProjectConfig import io.kotest.core.spec.IsolationMode import io... 더보기
Kotlin Spring Boot Redis Cache 대충 적용하기. 그냥 메모용으로.. (너무나 흔해서 설명 필요 없음. 구현방식만 내맘대로) 캐시로 사용될 키-TTL 에 대한 Enum 하나. ( 직접 처리해도 됨 ) enum class RedisCacheKeyProperties(val description: String, val ttl: Long, val key: Boolean, val placeholder: String, val dpOrderNumber: Int) { cached_default( "시스템 유지 관리 캐시", 60 * 60 * 24L, true, "KEY", 0 ), //second s * m * h cached_company_id( "회사 정보 캐시", 60 * 60 * 24L, true, "KEY", 0 ), //second s * m * h } L.. 더보기
Kotlin Excel Reader/ fastexcel 코틀린으로 엑셀 읽기/쓰기 신규로 전달(?) 받은 프로젝트가 코틀린 환경으로 되어있어서.. 하... 여튼 공부나 해볼겸해서 코틀린에서 엑셀 읽기를 대충대충 만들어 봤다. 개발환경부터 실행까지.. 어렵네..ㅎㅎ ( java 였으면 말이지 그냥 쑥..) 우선 플젝을 만들어보자. 아래 DB관련 부분은 제거해도 된다. 엑셀 라이브러리 추가만 확인하자. fastexcel . fastexcel-reader import org.jetbrains.kotlin.gradle.tasks.KotlinCompile plugins { id("org.springframework.boot") version "2.4.5" id("io.spring.dependency-management") version "1.0.11.RELEASE" kotlin("jvm") v.. 더보기
@Cacheable (Redis) 의 장애 대응용으로 Hystrix 사용 https://github.com/Netflix/Hystrix/wiki/Configuration Netflix/Hystrix Hystrix is a latency and fault tolerance library designed to isolate points of access to remote systems, services and 3rd party libraries, stop cascading failure and enable resilience in complex di... github.com 캐시를 여기저기 많이 붙여 사용함. @Cachable(key="#{id}", value="cache_xxxxxx") public Xxxxx findById( Long id ){ ..... return xxxx.. 더보기
AWS @SqsListener 사용시 warn 문제. The failing operation will be retried in 10000 milliseconds ... Running, pool size = 3, active threads = 3, queued tasks = 0, completed tasks = 20 ... 개발환경에서는 문제없이 잘 받아주던 Queue 리스너가 운영에 배포되면서 위와 같은 오류가 났다. 처리 되기는 하는데 밀리는 상황. 메세지 내용으로 보면 대략 처리량의 문제로 보인다. 즉, 베타의 간헐적 메시지 처리가 운영에서의 무지막지한 메시지 처리를 허용하지 못한. 아.. 뭔가 또, Configuration을 만들어줘야 하는 구나... 하고 찾아보니. https://stackoverflow.com/questions/51373082/sp.. 더보기