SORU
23 Kasım 2009, PAZARTESİ


Ne zaman uuıd kullanmalıyım.() uuid1 vs uuıd.() uuid4 python?

I docs. dan ikisi arasındaki farkı anlayabilme

uuid1():
Ana bilgisayar KİMLİĞİ, sıra numarası ve geçerli zaman bir UUID oluşturmak

uuid4():
Rastgele bir UUID oluşturmak.

uuid1 bir UUID oluşturmak için makine/sıra/zaman bilgi kullanır. Her kullanmanın artıları ve eksileri nelerdir?

uuid1() makine-bilgileri kapalı tabanlı olduğu için gizlilik endişeleri var, biliyorum. Eğer biri ya da diğeri seçerken daha ince ise orada merak ediyorum. Ben sadece tamamen rastgele bir UUID olduğu için şu anda uuid4() kullanın. Ama eğer uuid1 çarpışma riskini azaltmak için kullanılması gerektiğini merak ediyorum.

Temel olarak, en iyi uygulamaları diğer vs birini kullanarak için ipuçları arıyorum. Teşekkürler!

CEVAP
23 Kasım 2009, PAZARTESİ


uuid1() herhangi bir çakışması (aynı anda çok sayıda oluşturmak varsayımı altında) üretmek için garanti değil. Mac adresi bilgisayar arasında benzersiz yapmak için kullanılan alır gibi uuid ve bilgisayar arasında bir bağlantı yok Hayır bu kadar önemliyse, onu kullanmak olmaz.

2'den fazla oluşturarak çoğaltır oluşturabilirsiniz14100ns, ama bu daha az uuid1 en kullanım durumları için sorun değil.

uuid4() dediğiniz gibi, rastgele bir UUID üretir. Bir çarpışma şans gerçektengerçektenküçük. Bu konuda endişelenmenize gerek yok bu yeterli. Sorun rastgele sayı kötü bir jeneratör bu çarpışmalar olması daha olası hale getirir.

This excellent answer by Bob Aman kadar güzel özetliyor. (Bütün cevap okumanızı tavsiye ederiz.)

Açıkçası, tek bir uygulama alanı içinde kötü niyetli aktörler olmadan, Dünya'daki tüm yaşamı yok edecek varsa çok geçmeden ortaya çarpışma, sürüm 4 UUID bile, eğer çok üretiyorsun bile Olacak biçimde saniyede.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • BurnedInDotCom

    BurnedInDotC

    3 NİSAN 2010
  • ŠĩŗĜŕôŵåɭȍҭҭ

    ŠĩŗĜŕô

    29 Kasım 2009
  • Sorikan

    Sorikan

    3 ŞUBAT 2008