전체 글142 Executor의 계층도 그림 1. ScheduledThreadPollExecutor : 스케줄러용 스레드 풀, 스프링의 @Scheduled에서 사용2. ForkJoinPoll : 작업을 쪼개고 합치는 분할정복을 위해 나온 스레드 풀, StreamAPI와 가상 스레드의 스케줄러에서 사용3. ThreadPerTaskExecutor : 요청당 스레드4. ThreadPoolExecutor : 기본 스레드 풀, 흔히 아는 톰캣 스레드 풀이 이것을 활용 2026. 5. 3. Virtual Thread (1) - JEP444 1. 가상스레드의 목표2. Thread-per-request의 한계3. Thread-per-request의 한계를 극복하기 위해서 했던 기존 방법4. 가상 스레드의 탄생배경5. 가상 스레드와 플랫폼 스레드6. 가상 스레드 vs 플랫폼 스레드 테스트7. 가상 스레드를 사용해야할 때 https://openjdk.org/jeps/444 JEP444를 보고 요약했습니다. 3분의 1정도 한거 같네요 가상스레드는 JDK21부터 지원되었다.모든 가상 스레드는 스레드 로컬을 가진다. 프리뷰 단계에서는 스레드 로컬이 없는 가상 스레드의 생성이 가능했지만 스레드 로컬 자원이 보장됨으로써 훨씬 더 많은 기존 라이브러리를 가상 스레드와 함께 변경없이 사용할 수 있다.가상 스레드도 생애 전반에 걸쳐 모니터링 되며 새로운 스레드.. 2026. 5. 3. 소켓의 생성 1. 프로토콜 체계2. 소켓 타입3. 통신에 사용되는 프로토콜 정보이 3가지를 매개변수로 만들어짐1. 프로토콜 체계PF_INET IPv4 인터넷 프로토콜 체계PF_INET6 IPv6 인터넷 프로토콜 체계 PF_LOCAL 로컬 통신을 위한 UNIX 프로토콜 체계PF_PACKET Low Level 소켓을 위한 프로토콜 체계PF_IPX IPX 노벨 프로토콜 체계2. 타입연결지향 (SOCKET_STREAM)비연결지향 (SOCKET_DGRAM)3. 정보같은 프로토콜 체계안에 전송방식이 동일한 프로토콜이 둘 이상 존재할 수 있기 때문에 필요TCPUDP 2026. 5. 2. 자바의 6가지 가비지 컬렉터 Serial GC싱글스레드 동작세대별 이론 기반 동작 영 꽉차면 마이너GC올드 꽉차면 풀GC 코어가 하나거나 메모리가 1792MB보다 작으면 요게 디폴트싱글 코어나 사용하는 메모리가 적으면 G1보다 좋음어차피 코어가 하나면 GC는 CPU를 집중적으로 쓰기 때문에 싱글 스레드로 하는게 좋음 컨텍스트스위칭 비용이없자나어차피 GC끝날때까지 STW고 그냥 한번에 제대로 끝내는 것 또 코어가 여러개라도 메모리가 엄청작으면 대충 100MB정도면 이게 더 좋음 왜냐하면 병렬로한다고 동기화 비용등 치를바에는 그냥 한번에 Parallel GCjdk 5~8에서 코어가 2개이상 메모리가 1792MB보다 크면 디폴트였음 (서버클래스)멀티스레드 동작모든 코어에 GC를 할당쓰루풋 = 애플실행시간 / 전체실행시간 = GC가 일어.. 2026. 5. 2. Single Flight 운영 중 스레드 풀 포화 비율 50% 식별, Soft TTL 전환으로 5배 개선 1. 배경2. 결론 요약3. 스탬피드 발생 상황4. 싱글 플라이트5. 가상 스레드 (자바 25)6. PER 7. 소프트 TTL 1. 배경비밀로그에는 다른 사용자의 롤링페이퍼로 가기위해 모든 회원의 목록을 볼 수 있는 공간이 있다. 캐시 구조는 String을 쓰며 키는 member:page:0:size:10 형식으로 0페이지의 사이즈 10 을 나타낸다.값에는 회원 이름이랑 회원 ID의 목록을 JSON으로 넣었다. 사용자가 요청한 페이지와 사이즈를 그대로 캐싱하여. 캐시 어사이드로 갱신하고 삽입시에는 DB에만 저장한다. TTL은 1분이다. 캐시 스탬피드 방지 목적으로 싱글플라이트를 적용하였는데 스레드 스파이크 현상이 식별되었다.따라서 다른 스탬피드 방지 전략들을 테스트 하였다.스탬피드 발생 상황부터 천천히.. 2026. 4. 25. 풀 GC - 마크 스윕 컴팩트 알고리즘 그림 마크스윕콤팩트 1콤팩트 2콤팩트 3콤팩트 4마크 스윕 컴팩트는 마크 카피와 다르게 직접적으로 메모리를 제거하지 않음마킹이 안된 객체는 객체 할당시 덮어쓰기를 함또한 마크 카피는 객체하나마다 마크와 카피가 일어나서 한 번의 순차적 스캔으로 모든 정리를 끝낼 수 있지만마크 스윕 컴팩트는 각 단계마다 힙 메모리 전체에 대하여 순차적 스캔이 발생하여 느림 2026. 4. 23. 이전 1 2 3 4 5 ··· 24 다음