pooney
article thumbnail
Spring boot - Spring boot + Quartz 스케줄러 배치 구성
Spring boot/spring-batch 2022. 6. 30. 16:01

스케줄러 Quartz를 사용하는 방법을 알아 보려고 합니다. 사람들이 배치와 스케줄러를 많이 혼동 하시는데 다른 개념이라 고 보시면됩니다. 차이점은 아래 주소를 통해 확인해주세요 https://pooney.tistory.com/96 Spring boot - Spring Batch란? 안녕하세요 오늘은 많이 사용하는 Spring Batch를 설명해 드릴려고 합니다. Batch를 사용하기 위해선 스케줄러를 같이 사용하는데 대표적으로 아래와 같습니다 쉽게 어노테이션으로 사용가능 한 @Sch pooney.tistory.com 스케줄러 Quartz를 사용하는 이유는 무엇일까요? 간단하게 스프링에서 제공해주는 @Scheduled를 통해서 사용 할 수 있는데 말이죠. 저는 아래에 내용인거 같습니다. 장점 In-mem..

article thumbnail
Spring boot - Docker를 이용한 JENKINS 설치
Spring boot 2022. 6. 28. 16:15

안녕하세요 오늘은 JENKINS를 사용하고자 합니다. JENKINS는 다들 알고 있으시겠지만 CI/CD에 대표적인 도구입니다. 젠킨스는 WEB HOOK 등을 통해서 효과적으로 배포 가능하면서, 나중에 하겠지만 JENKINS를 통해 배치를 동작시킬 수 있습니다. 배치를 작업할 수 있는 화면을 만들 수 있겠지만 시간도 많이 들고 효과적으로 구성하는데 어려움이 있을 것 입 니다. 이를 효과적으로 해결 할 수 있는 방법이 JENKINS 입니다. JENKINS는 물로 개발서버가 있다면 직접 설치 가능 하 겠지만 좀 더 쉽게 환경을 구성하기 위해 Docker를 사용 할 건데 그중에서도 윈도우 환경에서 쉽게 사용 할 수 있는 "Docker desktop"을 사용하려고 합니다. 대부분이 UI가 아닌 명령어를 통해 진행..

article thumbnail
Spring boot - Spring Batch란?
Spring boot/spring-batch 2022. 6. 20. 22:16

안녕하세요 오늘은 많이 사용하는 Spring Batch를 설명해 드릴려고 합니다. Batch를 사용하기 위해선 스케줄러를 같이 사용하는데 대표적으로 아래와 같습니다 쉽게 어노테이션으로 사용가능 한 @Scheduled DB 클러스터링을 도와주는 Quartz CI/CD 젠킨스 Batch + Scheduler 는 나중에 설명해 드리도록 하고 우선 들어가기전 Batch 와 스케줄러에 대해서 혼란 스러운 분들을 위하여 간단하게 설명하겠습니다. Batch란? 우리는 흔히 일을 진행하면서 아래와 같은 작업이 필요한경우 가 발생합니다. 많은 양의 데이터를 처리한 결과값을 저장하거나 이러한 결과를 사용자에게 보여줘야하는경우 배송중인 상태로 5일이 지나면 배송완료 상태로 변경 구매완료 7일 이후 자동 구매확정 서비스를 운..

article thumbnail
JPA - OneToOne관계 N+1문제
JPA 2022. 4. 24. 21:28

안녕하세요. 오늘은 JPA 작업을 하시면서 발생하는 양방향 OneToOne 관계에서 주인과 주인이아닌 LazyLoding(지연로딩)으로 설정 했지만 적용이 안되고 eagerLoding(즉시로딩)으로 조회해서 발생하는 흔히 말하는 N+1문제가 왜 발생하는지 알아 보려고 합니다. 이문제는 정확히는 주인관계에서는 LazyLoding이 되지만 주인이 아닌 Entity에서 조회를 할시 eagerLoding 발생하는 문제입니다. 그러면 이제 시작하겠습니다. 아래의 연관간계는 쉬운 설명을 위하여 편하게 관계를 맺은점을 참고 해주셨으면 합니다. 연관관계 설정 및 TEST_CASE 작성 Entity 구성은 2개 Product(상품)과 Product_Desc(상품설명)으로 구성되며 연관관계의 주인은 product로 위의 ..

article thumbnail
[docker] pull image 시 x509: certificate has expired or is not ye t valid
docker 2022. 2. 2. 00:19

docker의 pull 명령어를 통해 이미지를 docker-hub로 부터 가져 오는 경우가 있습니다. 예를 들면 docker pull httpd,centos와 같은 명령어로 쉽게 가져올 수 있는데 이때 아래와 같은 에러가 발생하는 경우가 있습니다. [root@localhost ~]# docker pull httpd Using default tag: latest Trying to pull repository docker.io/library/httpd ... Get https://registry-1.docker.io/v2/: x509: certificate has expired or is not yet valid 위의 에러는 certificate가 만료되어 발생 할 수 있는 에러 일 수 있지만 VMware를..

Spring boot @PropertySource로 yml 로드 방법
Spring boot 2021. 11. 7. 19:52

안녕하세요. 오늘은 @PropertySource를 통해 yml파일을 로드하는 방법을 알려드리고자 합니다. 프로젝트를 진행하면서 카카오,네이버에서 제공하는 API를 호출할때 필요한 secret key를 property파일로 분리 한 후 Bean,Configuration으로 등록하여 호출 시 해당 secrey key를 API 호출 시 실어 사용하는 경우가 많았습니다. 이때 많은 사람들이 yml를 사용하지 않고 properties를 사용하는데 저는 yml를 사용하고 하고 싶어서 찾아낸 방법을 공유하고자 합니다. 그러면 우선 @PropertySource를 알아야 할 것 같습니다. @PropertySource @PropertySource는 기본적으로 설정파일을 읽어 속성을 주입하는 기능을 담당합니다. 간단한 예시..

article thumbnail
[Vue] 부모 자식 간에 created, mounted 순서
Vue 2021. 10. 25. 22:15

안녕하세요 Vue의 라이프 사이클중 created와 mounted를 알아 보려고합니다. 보통 created와 mounted를 가장 많이 사용하지만 부모자식간에 호출 순서를 잘 모르는 경우가 많습니다. 때문에 Data를 핸들링 할때 에러가 많이 발생하는데 오늘 기회에 동작 순서를 정확하게 파악하여 올바르게 Data를 핸들링 하면 좋겠습니다 created란? created는 렌더링은 안되었지만 Vue 인스턴스가 생성 되면서 동작하는 Hook이라고 보시면됩니다. virtual dom은 사용할 수 없지만 Data에 접근 및 초기화 하거나 이벤트를 처리하는데 자주 이용됩니다. 그렇다면 하나의 부모 Component에 여라 자식 components가 존재 할 경우 호출 순서는 어떻게 될까요? 부모 > 자식 순으로 ..

article thumbnail
Spring boot - jenkins(젠킨스) webhook 연동
Spring boot 2021. 10. 4. 15:19

CI/CD에 대표적인 젠킨스의 WebHook을 알아 보려고 합니다. 그렇다면 WebHook은 무엇일까요?? WebHook WebHook은 어떠한 이벤트가 일어나면 설정했던 URL로 특정 정보,이벤트를 보내거나 알려주는것을 말합니다. 쉽게 보면, 특정행동이 일아나면 알려주는 것이라고 보면 됩니다. WebHook을 사용하지 않고 특정 이벤트 혹은 변경이 일어 났는지 알고자 한다면 짧은 주기로 서버에 계속 요청하여 확인 하는 방법을 즉 polling 사용해야 하는데 그렇게 한다면 많은 부담을 줄 것입니다. 그에 비해 Webhook관련 설정을 하고 그저 기다리면 필요한 정보 및 이벤트를 알려 주기 때문에 해당 서비스에 부담을 줄일 수 있어 많이 사용합니다. 아래를 보시면 쉽게 이해 할 수 있을 꺼에요! 그렇다면..