Постоји неколико начина да се генерише УУИД у Ноде.јс, али зашто бирати један преко другог? Ево зашто.
Универзални јединствени идентификатор (УУИД) је 128-битни низ знакова који можете користити за означавање и приступ подацима. Користећи Ноде.јс, можете лако креирати УУИД-ове користећи неколико приступа.
УУИД-ови су моћни за јединствену идентификацију јер су шансе да наиђете на исти ИД веома мале. Ово такође значи да можете да генеришете УУИД аутономно без унакрсне провере у односу на централну базу података. УУИД-ови су веома скалабилни.
Коришћење крипто модула
Уграђени крипто модул ин Ноде обезбеђује метод рандомУУИД() за генерисање УУИД-ова.
конст крипто = захтевају(„крипто“)
конст ууид = црипто.рандомУУИД()
За спречавање рандомУУИД() од коришћења кеша током генерисања УУИД-а, подесити дисаблеЕнтропиЦацхе на истинито, овако:
конст ууид = црипто.рандомУУИД({ дисаблеЕнтропиЦацхе: истинито })
Коришћење пакета ууид
За разлику од крипто модула, ууид пакет је трећа страна нпм модул. Да бисте га инсталирали, покрените следећу команду.
нпм инсталл ууид
ууид вам омогућава да генеришете различите верзије ИД-а:
- Верзије 1 и 4 генеришу јединствени ИД насумично генерисан.
- Верзије 3 и 5 генеришу јединствени ИД из именског простора и имена.
Овај пример показује како можете да генеришете УУИД верзије 4:
конст {в4: ууидв4} = захтевају("ууид")
конст ид = ууидв4()
Коришћење Нано ИД-а
Нано ИД је такође још један НПМ пакет који се користи за генерисање УУИД-ова у Ноде-у. Иако ради скоро исто као и ууид пакет, постоје неке разлике:
- Нано ИД садржи 36 симбола уместо 21.
- Нано ИД је два пута бржи од ууид-а.
- Нано ИД је четири пута мањи од ууид-а. Његови идентификатори садрже 130 бајтова уместо 483 бајта.
Користите следећи код да бисте генерисали Нано ИД:
конст {наноид} = захтевају("наноид")
конст ид = наноид()
Да ли је Нано ИД бољи од ууид-а?
Постоје најмање три методе које можете користити за генерисање УУИД-а у Ноде-у: уграђени крипто модул и ууид и Нано ИД пакети треће стране. Ако желите да користите екстерни пакет, размислите о Нано ИД-у. Мањи је и много бржи од ууид-а.