Penjana UUID

Jana pengecam unik universal (UUID) menggunakan algoritma berasaskan cap waktu untuk mengelakkan duplikasi.

Pintasan papan kekunci: R untuk menjana semula UUID atau C untuk menyalinnya

Cara UUID Berfungsi

UUID v1 (Berasaskan Cap Waktu): Menggunakan cap waktu semasa (selang 100 nanosaat sejak 15 Oktober 1582) digabungkan dengan alamat MAC atau pengecam nod rawak. Ini memastikan keunikan antara mesin yang berbeza dan mengelakkan duplikasi walaupun dijana serentak.

UUID v4 (Rawak): Menggunakan nombor rawak yang kuat secara kriptografi. Walaupun duplikasi mungkin secara teori, kebarangkaliannya sangat rendah (1 dalam 2^122) sehingga boleh diabaikan untuk tujuan praktikal.

UUID v7 (Cap Waktu Moden): Versi UUID terbaru yang menggabungkan cap waktu Unix (48 bit) dengan data rawak (74 bit). Ini memberikan manfaat pengisihan masa v1 sambil mengekalkan privasi v4, menjadikannya ideal untuk kunci utama pangkalan data.

Format: UUID adalah nilai 128-bit yang dipaparkan sebagai 32 digit heksadesimal dalam format: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx

Kes Penggunaan Biasa

UUID (juga dikenali sebagai GUID) memberi anda kumpulan pengecam unik yang praktikalnya tidak terhad tanpa menyelaras dengan pihak berkuasa pusat. Beberapa tempat yang biasanya digunakan:

Kunci utama pangkalan data

UUID membenarkan beberapa perkhidmatan atau pecahan menjana kunci secara bebas tanpa perlanggaran. UUID v7 semakin digemari kerana cap waktu utamanya mengekalkan penyisipan mesra lokaliti dan indeks kekal padat.

Sistem teragih

Apabila peristiwa dihasilkan oleh banyak nod, UUID setiap peristiwa mengelakkan kesesakan urutan berpusat dan mengekalkan log dapat dijejaki merentasi sempadan perkhidmatan.

Pengecam menghadap awam

UUID v4 dalam URL tidak mendedahkan berapa banyak rekod wujud atau mendedahkan serangan penghitungan seperti yang dilakukan oleh integer yang bertambah.

Kunci idempotensi

Pelanggan menjana UUID setiap permintaan supaya pelayan boleh mengenali percubaan semula dan mengelakkan memproses tindakan yang sama dua kali.

Versi Mana Yang Patut Anda Gunakan?

  • Gunakan v4 jika anda mahukan kerawakan mudah tanpa sifat tambahan - ini adalah lalai paling selamat untuk kebanyakan aplikasi.
  • Gunakan v7 jika pengecam akan menjadi kunci utama pangkalan data atau disimpan dalam mana-mana indeks di mana susunan penyisipan penting. Cap waktu yang terbenam menjadikan baris berkumpul bersama dan secara dramatik meningkatkan prestasi penulisan pada skala besar.
  • Gunakan v1 hanya apabila anda khususnya perlu menurunkan pengecam daripada cap waktu dan pengecam nod. Dalam aplikasi moden, v7 adalah pilihan yang lebih baik untuk kes penggunaan yang sama tanpa membocorkan alamat MAC.

Soalan Lazim

Apakah itu UUID?

UUID (pengecam unik sejagat) ialah nilai 128-bit, biasanya ditulis sebagai 32 digit heksadesimal dalam bentuk xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx. Versi yang berbeza menjana nilai menggunakan strategi yang berbeza (rawak, cap waktu, atau kedua-duanya).

Apakah perbezaan antara UUID dan GUID?

Kedua-duanya merujuk kepada perkara yang sama. GUID (pengecam unik global) ialah nama yang digunakan dalam ekosistem Microsoft; UUID ialah nama yang digunakan dalam RFC 4122 dan di mana-mana sahaja. Format dan jaminan keunikannya adalah sama.

Adakah UUID dijamin unik?

Tidak dijamin secara matematik - tetapi kebarangkalian perlanggaran untuk UUID v4 adalah kira-kira 1 daripada 2^122, yang jauh di bawah ambang untuk mana-mana aplikasi praktikal. Untuk UUID v1 dan v7, cap waktu dan bit nod/rawak menghalang perlanggaran dalam amalan.

Patutkah saya menggunakan UUID v4 atau UUID v7 untuk kunci utama pangkalan data?

UUID v7 umumnya lebih baik untuk kunci utama. Oleh sebab bit utamanya adalah cap waktu Unix, baris baharu disisipkan berhampiran satu sama lain pada cakera, yang mengekalkan indeks padat dan penulisan pantas. Gunakan v4 hanya apabila susunan penyisipan mutlak tidak boleh disimpulkan.

Adakah saya memerlukan penjana UUID v1?

Jarang. UUID v1 merangkumi alamat MAC mesin yang menjana (atau pengganti rawak), yang boleh membocorkan maklumat. UUID v7 menawarkan sifat boleh-isih-masa yang sama tanpa kebimbangan itu dan hampir selalu menjadi pilihan yang lebih baik hari ini.

Adakah penjana UUID ini percuma untuk digunakan?

Ya. Semua penjanaan berlaku dalam pelayar anda, tiada had kadar, dan tiada akaun diperlukan. Anda boleh menjana UUID individu di sini atau beralih kepada penjana pukal untuk sehingga 500 pada satu masa.

Kami hampir tidak menggunakan kuki

Kami hanya menggunakan kuki yang sangat diperlukan, yang meningkatkan keselamatan laman web dan memperbaiki pengalaman pengguna. Kami tidak menjejaki tindakan atau aktiviti anda.