[JobRunr] Pro 버전에서 Server Tag 설정 방법 및 실전 노하우
JAVA 2022. 1. 14. 18:50

이글에서 JobRunr에 대하여 간단한 사용법에 대하여 알아 보았다. 이번 글은 JobRunr Pro 버전에서 Service node에 대하여 각기 다른 tag를 설정하는 방법 및 Recurring Job를 설정 시 ProgressBar를 이용하는 방법에 대해 정리한 곳이 없어 정리하려고 한다. ◆Server Tag 기능 보통 production 환경에는 여러개의 node가 존재하고 특정 업무를 수행하는 node도 존재하기 마련이다. Tag 기능은 특정 Job를 특정 node에서만 수행 하도록 하는 기능이다. 이 기능은 pro버전에만 제공한다. JobRunr 설정에 아래 내용을 추가 해야 Tag 기능을 사용 가능하다. @Configuration class JobRunrConfig( private val ..

[JVM] Garbage Collection
JAVA 2021. 12. 10. 08:44

JVM에서 GC를 빼놓으면 JVM동작 원리에 대해여 깊게 요해하기 힘들다. C++ 같은 언어에서는 개발자가 메모리영역에 대하여 관리하지만 JAVA를 비롯한 많은 언어에서는 GC를 도입하여 내부에서 처리하도록 한다. GC란 JVM에서 메모리에서 더 이상 사용되지 않는 객체를 찾아서 제거하는 행위를 말한다. 먼저 GC에 대하여 깊이 설명하기 전에 GC의 버전에 대하여 알아보자 Serial GC: 제일 오래된 GC이다. 단일 Thread로 동작하며 동작시에는 "Stop The World"라는 상태에 진입하게 된다. 이 상태에서는 모든 Thread가 멈추가 GC가 끝나길 기다린다. 이 방식은 Mark Compact 알고리즘을 사용하여 마크한 객체를 삭제한 후 메모리를 정리(객체 이동)하는 행위를 추가적으로 진행..

JAVA에 대하여(1)
JAVA 2021. 12. 8. 21:12

JAVA 자체에 대하여 물음 답변 형식으로 몇번의 글을 거쳐 정리할 예정이다. JAVA 에 대한 총체적인 이해 JAVA는 객체지항의 언어이다. JAVA만의 특징을 꼽으라면 아마도 플랫폼에 의존적이지 않는 특성과 가비지 콜랙션일 것이다. 두가지 개념 JRE(Java Runtime Environment): Java의 실행 환경이다. JRE에는 JVM과 JAVA 라이브러리들이 포함된다. JDK(Java Development Kit): JRE를 포함한 더 많은 개발자 도구들을 제공한다. 예를 들면 컴파일러이다. JAVA언어로 작성된 코드는 컴파일러(javac)를 통해 bytecode로 컴파일되고 컴파일된 bytecode는 JRE에서 실행된다. 실행될때 bytecode를 기계어로 해석하여 실행 할 수도 있지만 J..