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

 • 

저장 53조회 4,715

댓글 0