본문 바로가기
728x90

JVM2

자바의 철학으로 보는 JVM Java가 무엇인가라는 질문에 자바의 철학을 먼저 살펴봐야 될 것 같다. 자바의 철학은 Write Once, Run Everywhere으로 시작하여 점차 발전해왔다. 이러한 철학을 실현하기 위해 4가지의 개념을 도입했다. 자바 프로그래밍 언어 클래스 파일 포멧 자바 API (Application Programming Interface) JVM 이 순서대로 자바의 구동원리를 이해한다면 전반적인 그림을 그릴 수 있을 것이다. 우리는 Java라는 언어를 통해 .java 형식으로 개발자가 읽을 수 있는 코드를 작성한다. 작성한 코드는 JDK라는 Java를 개발하기 위한 여러 툴을 가진 곳에서 javac라는 컴파일러를 사용하여 컴퓨터가 이해할 수 있는 byte code인 .class로 컴파일된다. 우리가 흔히 아.. 2021. 2. 19.
VisualVM 원격에서 접속하기 [이론편] 지난 주 Udemy에서 Java Application Performance and Memory Management 강의를 보편서 한동안 개인 프로젝트 letshadow에 사용해보고 싶은 생각이 문득 들었습니다. 회사에서는 scouter를 사용해서 모니터링하고 있지만 개인 프로젝트 서버에 scouter를 도입하기는 agent를 따로 설치해야되어 모니터링 효율대비 리소스를 잡아 먹을 것 같다는 생각이 들었고, 스프링부트 어드민 또한 어드민 어플리케이션을 하나 더 띄워야 했기 때문에 한동안은 JVM에 내장되어있는(JDK 8기준) visualvm을 사용하는 것이 좋겠다고 생각했습니다. 이번에는 visualvm을 원격에서 구동하는데 필요한 JMX와 RMI에 대해서 한번 알아보겠습니다. visualvm 동작과정 v.. 2021. 2. 17.
728x90