Using UUID as a identifier
A universal unique identifier (UUID) is a standard of generating identifiers, standardized by the Open Software Foundation (OSF).
The intent of UUIDs is to be able to generate unique identifiers in a distributed system without central coordination point.
Version 1 UUID is meant for generating time-based UUIDs. They also accept 48 bit long identifier (281,474,976,710,655 available values). In many cases it make sense to use a machine MAC Address as an identifier.
Version 4 UUID is meant for generating UUIDs from truly-random or pseudo-random numbers. UUID v4 are not giving us guaranteed unique numbers; they are rather practically unique. Probability of getting a duplicate is as follows: Only after generating 1 billion UUIDs every second for the next 100 years, the probability of creating just one duplicate would be about 50%.
The Node.js node-uuid module is very simple to use.
# sudo npm install -g node-uuid
# npm link node-uuid
var uuid = require('node-uuid');
console.log(uuid.v1());
console.log(uuid.v4());
Non-sequential url-friendly unique ids
shortid creates amazingly short non-sequential url-friendly unique ids. Perfect for url shorteners, MongoDB and Redis ids, and any other id users might see.
# sudo npm install -g shortid
# npm link shortid
var shortid = require('shortid');
console.log(shortid.generate());
idgen supports generating any length ID.
# sudo npm install -g idgen
# npm link idgen
var idgen = require('idgen');
idgen(8);
idgen(16);