전체 글
-
-
Apache JMeter 5.6.3 (mac m1) 설치 및 http요청 사용기카테고리 없음 2024. 7. 7. 17:04
성능 테스트를 위해 Apache JMeter를 다운받았다. (.zip) https://jmeter.apache.org/download_jmeter.cgi Apache JMeter - Download Apache JMeterDownload Apache JMeter We recommend you use a mirror to download our release builds, but you must verify the integrity of the downloaded files using signatures downloaded from our main distribution directories. Recent releases (48 hours) may not yet be avajmeter.apache.org알..
-
MAC에서 Docker 설치 / oracle 11g 좌충우돌 설치기 [호환이슈] / Docker mysql 설치카테고리 없음 2024. 5. 7. 00:46
현재 나는 MAC Air M2 노트북이다. 오라클 설치 과정이다 다만, 오라클은 엄청난 시간을 소모했다...MySql은 진짜 10분 컷이었다.혹시 이 글을 보고 따라하게 된다면 삭제를 몇 번 하기 때문에 반드시 끝까지 읽고 따라하시길. oracle은 macOS 를 지원하지 않아 Docker 를 통해 설치한다.https://docs.docker.com/desktop/install/mac-install/ Install Docker Desktop on MacInstall Docker for Mac to get started. This guide covers system requirements, where to download, and instructions on how to install and update..
-
[Spring] 통합테스트 vs 단위테스트카테고리 없음 2024. 4. 23. 00:09
통합테스트와 단위테스트의 차이 ?* 통합테스트통합테스트는 @SpringBootTest 를 쓰면, 메인 진입점을 포함한 모든 하위 빈들이 ApplicationContext에 등록된다.그래서 실제 운영과 가장 유사한 환경에 테스트한다는 점이며, 여러 모듈을 통합적으로 모아 이들이 의도대로 흘러가는지 테스트하는 것이 통합테스트인가보다 하였고모든 빈들을 올리기 때문에 느리고 무겁다. * 단위테스트하나의 모듈을 독립적으로 진행하는 작은 단위의 테스트라고 한다. 여기서 모듈은 하나의 메소드 또는 하나의 기능이다. * 사실 무겁고 느리지만 않으면 통합테스트를 써도되는거 아니야?~아니다. 제일 큰 차이점은 의존성에 있다. 여러 모듈이 내가 짠 비즈니스 로직에 의존되었을 때 내가 원하는 의도대로..
-
JVM Green Thread vs Native Thread카테고리 없음 2024. 3. 31. 23:48
* 커널 커널은 운영체제의 핵심 기능을 수행하고 시스템 전반을 관리 감독하며 하드웨어와 관련된 작업을 수행한다. 간단히 말하면 커널은 운영체제의 메모리에 상주하고있는 프로그램이라 할 수 있다. 프로세스가 실행되는 동안 커널모드와 유저모드를 반복적으로 넘나든다. *커널모드 커널모드에서 실행되는 코드는 시스템 자원에 대한 접근 권한이 허용되며 하드웨어 제어, 메모리 관리, 인터럽트 처리 등에 중요 작업이 수행된다. * 유저모드 우리 프로그램이나 소스는 유저모드에서 실행되며, 실행중에 인터럽트가 발생하거나 시스템콜을 호출하게되면 커널모드로 전환된다. 커널모드에서 인터룹트나 시스템콜을 직접 처리한다. * 커널모드와 유저모드를 나누는 이유는 시스템을 보호하기 위해서이다. 우리가 작성한 프로그램이 다른 프로세스에 ..
-
G1GC 동작 과정카테고리 없음 2024. 3. 24. 23:07
Serial GC, Parallel GC, Parallel GC, Parallel Old GC, CMS GC, G1GC 들의 개선과 발전 과정을 보면 LIVE하지 못한 객체보다 LIVE 한 객체들의 이동, 복사를 중점으로 둔다. 나날이 발전하는 GC들 Serial GC 는 가장 단순한 GC로 싱글스레드 1개의 스레드로 다른 GC에 비해 Stop The World 시간이 길다. 실무에서 사용 안한다. Paraller GC 는 Young 영역의 멀티스레드 방식으로 Serial GC보다 STW 시간이 짧다. 자바8의 디폴트 GC Paraller OLD GC는 Old 영역까지 멀티스레드 방식을 사용한 GC이다. CMS GC 는 STW를 줄여보기 위해 Live한 객체를 한번에 찾지 않고 나눠서 찾기로한(마킹하기로..
-
JVM 메모리카테고리 없음 2024. 3. 17. 23:18
JVM이란, Java Virtual Machine의 약자이며 자바 가상 머신이라고 한다. Java의 바이트 코드를 해석하고 실행한다. 어떤 운영체제든 JAVA 파일을 실행할 수 있다. 자바 프로그램 실행하면 jvm은 OS로부터 메모리를 할당 받는다. 할당받은 메모리를 자바 프로그램에 맞게 여러개의 영역으로 나누어 사용한다. 메모리를 관리하지 않고 구성하게되면 StackOverFlow 가 발생하여 어플리케이션이 종료되거나 속도 저하가 된다. JVM순서 1. .java -> 컴파일러를 통해 .class 파일로 변환 2. .class 파일을 JVM의 ClassLoader에게 보낸다 3. 클래스로더에서 jvm런타임 영역으로 로딩(할당!)해 메모리에 올린다. JVM의 RUNTIME DATA AREA 클래스 로더가..