خبر و ترفند روز

خبر و ترفند های روز را اینجا بخوانید!

نحوه تولید شناسه های منحصر به فرد در Node

راه‌های مختلفی برای ایجاد UUID در Node.js وجود دارد، اما چرا یکی را بر دیگری انتخاب کنیم؟ در اینجا دلیل آن است.

یک شناسه منحصر به فرد جهانی (UUID) یک رشته کاراکتر 128 بیتی است که می توانید از آن برای برچسب گذاری و دسترسی به داده ها استفاده کنید. با استفاده از Node.js، می توانید به راحتی UUID با استفاده از چندین رویکرد ایجاد کنید.

UUID ها برای شناسایی منحصر به فرد قدرتمند هستند زیرا شانس مواجهه با همان شناسه بسیار کم است. این همچنین به این معنی است که می توانید یک UUID به طور مستقل و بدون بررسی متقاطع در برابر پایگاه داده مرکزی ایجاد کنید. UUID ها بسیار مقیاس پذیر هستند.

با استفاده از ماژول رمزنگاری

ماژول رمزنگاری داخلی در Node متد randomUUID() را برای تولید UUID ارائه می‌کند.

const crypto = require("crypto")
const uuid = crypto.randomUUID()

برای جلوگیری از استفاده randomUUID() از کش در طول تولید UUID، disableEntropyCache را روی true تنظیم کنید، مانند این:

const uuid = crypto.randomUUID({ disableEntropyCache: true })

با استفاده از بسته uuid

برخلاف ماژول کریپتو، بسته uuid یک ماژول npm شخص ثالث است. برای نصب آن دستور زیر را اجرا کنید.

npm install uuid

uuid به شما امکان می دهد نسخه های مختلف شناسه را تولید کنید:

  • نسخه 1 و 4 یک شناسه منحصر به فرد ایجاد می کند که به طور تصادفی تولید می شود.
  • نسخه 3 و 5 یک شناسه منحصر به فرد از فضای نام و نام ایجاد می کند.

این مثال نشان می دهد که چگونه می توانید یک UUID نسخه 4 ایجاد کنید:

const {v4 : uuidv4} = require("uuid")
const id = uuidv4()

با استفاده از شناسه نانو

Nano ID نیز یکی دیگر از بسته های NPM است که برای تولید UUID در Node استفاده می شود. در حالی که تقریباً مانند بسته uuid کار می کند، تفاوت هایی وجود دارد:

  • شناسه نانو شامل 36 نماد به جای 21 علامت است.
  • Nano ID دو برابر سریعتر از uuid است.
  • شناسه نانو چهار برابر کوچکتر از uuid است. شناسه های آن به جای 483 بایت، 130 بایت است.
مطلب مرتبط:   5 جایگزین برای Express.js

برای تولید Nano ID از کد زیر استفاده کنید:

const { nanoid } = require("nanoid")
const id = nanoid()

آیا شناسه نانو بهتر از uuid است؟

حداقل سه روش برای تولید UUID در Node وجود دارد: ماژول رمزنگاری داخلی و بسته‌های شخص ثالث uuid و Nano ID. اگر می خواهید از یک بسته خارجی استفاده کنید، Nano ID را در نظر بگیرید. کوچکتر و بسیار سریعتر از uuid است.