source

Java UUID.random을 얻을 수 있는 기회는 얼마나 됩니까?UUID 충돌?

manysource 2022. 10. 14. 22:12

Java UUID.random을 얻을 수 있는 기회는 얼마나 됩니까?UUID 충돌?

자바에서 유니크 파일을 작성해야 하는데 UUID.random을 사용할 예정입니다.이름을 생성하는 UUID.이 일로 충돌할 가능성이 있습니까?걱정 안 해도 되는 벨로우즈 같은 걸 해야 하나요?

Integer attemptsToGenerateUUID = 1;

while (true) {
    UUID fileUUID = UUID.randomUUID();

    if (fileDoesNotExistwith this UUID name) {
        save file;
        break;
    }

    attemptsToGenerateUUID += 1;

    if (attemptsToGenerateUUID > 64) {
        return false;
    }
}

위키피디아에 따르면 랜덤 UUID의 중복 가능성에 대해서는 다음과 같습니다.

향후 100년 동안 초당 10억 개의 UUID를 생성한 후에야 중복 항목이 하나 생성될 확률이 약 50%가 됩니다.바꿔 말하면 지구상의 모든 사람이 6억 개의 UUID를 소유하고 있다면 1개의 중복 가능성이 약 50%가 됩니다.

Java의 UUID 구현에도 같은 논리가 적용된다고 생각합니다.그러니까 걱정하지 마세요.

언급URL : https://stackoverflow.com/questions/24876188/how-big-is-the-chance-to-get-a-java-uuid-randomuuid-collision