Java UUID generation-Performance impact



랜덤으로 유니크한 문자열을 만들기 위해 Java.util.UUID#randomUUID() 라는 메서드를 사용해 보신 적이 있으실 겁니다. 이 글에서는 해당 메서드로 인해 시스템이 느려졌던 사례를 공유합니다.

글의 설명에 따르면, 내부 운영체제에서 entropy를 사용하여 고유번호를 생성한다고 하는데 이는 다양한 시스템의 상태 (마우스 움직임, 하드웨어 팬 소음의 변화, 장치 드라이버의 소음 변화 등)을 활용한다고 하는데요. 이때 운영체제에 이 entropy가 부족할 경우 난수 생성 속도가 느려지고 이는 애플리케이션에 영향을 준다고 합니다. 글에 나와있는 스레드 덤프 리포트를 보면 상당히 흥미로운데요.

무심코 사용하던 코드에서도 결함이 생기는 경우가 종종 있으니 특히나 외부 라이브러리를 사용할 때는 한 번쯤은 추상화되어있는 인터페이스 내부에서 어떤 식으로 돌아가는지 살펴보는 것 또한 중요해 보입니다.


https://medium.com/@RamLakshmanan/java-uuid-generation-performance-impact-cec888b7d9b8

Java UUID generation - Performance impact

Medium

Java UUID generation - Performance impact

다음 내용이 궁금하다면?

또는

이미 회원이신가요?

2024년 8월 27일 오전 5:45

 • 

저장 55조회 5,245

댓글 0

    함께 읽은 게시물

    토스 데이터 직군 집중 채용 - 면접만 봐도 100만원!

    ... 더 보기

    토스 DATA·ML 집중채용

    toss.im

    토스 DATA·ML 집중채용

    ChatGPT의 GPT-5 Pro와 API의 GPT-5 High는 완전히 수준이 다르네요.


    그냥 GPT-5나 GPT-5 Thinking이 GPT-4.5정도의 느낌이라면, Pro, High는 진정한 GPT-5라고 느껴짐.

    조회 938


    Claude Code 실전 가이드: AI 네이티브 개발자로 가는 길

    ... 더 보기

    Claude Code 실전 가이드: AI 네이티브 개발자로 가는길_Gotama 멘토님

    F-Lab : 상위 1% 개발자들의 멘토링

    Claude Code 실전 가이드: AI 네이티브 개발자로 가는길_Gotama 멘토님

     • 

    저장 12 • 조회 1,820


    내가 가본 우리나라 - 지도 색칠 사이트

    ... 더 보기

    < 모든 선택지를 검토하다 아무것도 못 하는 당신에게 >

    1

    ... 더 보기

     • 

    댓글 1 • 저장 3 • 조회 644


    요구사항 변화에 따른 프로젝트 구조 확장 ⛏

    ... 더 보기

    요구사항 변화에 따른 프로젝트 구조 확장_Bradley 멘토님

    F-Lab : 상위 1% 개발자들의 멘토링

    요구사항 변화에 따른 프로젝트 구조 확장_Bradley 멘토님

     • 

    저장 34 • 조회 3,465