ਮੁਫਤ ਨੈਨੋ ਆਈਡੀ ਜਨਰੇਟਰ ਟੂਲ ਸੁਰੱਖਿਅਤ, URL-ਮਿੱਤਰ ਵਿਲੱਖਣ ਪਛਾਣਕਰਤਾਵਾਂ ਬਣਾਉਂਦਾ ਹੈ। ਲੰਬਾਈ ਅਤੇ ਅੱਖਰ ਸੈੱਟ ਨੂੰ ਕਸਟਮਾਈਜ਼ ਕਰੋ। UUID ਨਾਲੋਂ ਤੇਜ਼ ਅਤੇ ਛੋਟਾ। ਡੇਟਾਬੇਸ ਅਤੇ ਵੈੱਬ ਐਪਸ ਲਈ ਬਿਹਤਰ।
ਸਾਡੇ ਮੁਫਤ ਆਨਲਾਈਨ ਨੈਨੋ ID ਜਨਰੇਟਰ ਨਾਲ ਤੁਰੰਤ ਸੁਰੱਖਿਅਤ ਨੈਨੋ IDs ਬਣਾਓ। 21 ਅੱਖਰ ਲੰਬੇ ਸੰਕੁਚਿਤ, URL-ਸੁਰੱਖਿਅਤ ਵਿਲੱਖਣ ਪਛਾਣ ਪੱਤਰ ਬਣਾਓ ਜੋ ਆਧੁਨਿਕ ਵੈਬ ਐਪਲੀਕੇਸ਼ਨਾਂ, ਡੇਟਾਬੇਸਾਂ ਅਤੇ ਵੰਡੇ ਗਏ ਸਿਸਟਮਾਂ ਲਈ ਬਿਹਤਰ ਹਨ।
ਨੈਨੋ ID ਜਨਰੇਟਰ ਇੱਕ ਸ਼ਕਤੀਸ਼ਾਲੀ ਆਨਲਾਈਨ ਟੂਲ ਹੈ ਜੋ ਆਧੁਨਿਕ ਵੈਬ ਐਪਲੀਕੇਸ਼ਨਾਂ ਲਈ ਛੋਟੇ, ਸੁਰੱਖਿਅਤ, URL-ਮਿੱਤਰ ਵਿਲੱਖਣ ਸਤਰ ਪਛਾਣ ਪੱਤਰ ਬਣਾਉਂਦਾ ਹੈ। ਪਰੰਪਰਾਗਤ UUID ਜਨਰੇਟਰਾਂ ਦੇ ਵਿਰੁੱਧ, ਸਾਡਾ ਮੁਫਤ ਨੈਨੋ ID ਜਨਰੇਟਰ ਸੰਕੁਚਿਤ, ਟਕਰਾਅ-ਰੋਧੀ ਪਛਾਣ ਪੱਤਰ ਬਣਾਉਂਦਾ ਹੈ ਜੋ ਵੰਡੇ ਗਏ ਸਿਸਟਮਾਂ, ਡੇਟਾਬੇਸ ਰਿਕਾਰਡਾਂ ਅਤੇ ਛੋਟੇ, ਸੁਰੱਖਿਅਤ IDs ਦੀ ਲੋੜ ਵਾਲੀਆਂ ਵੈਬ ਐਪਲੀਕੇਸ਼ਨਾਂ ਲਈ ਬਿਹਤਰ ਹੈ।
ਨੈਨੋ ID ਜਨਰੇਟਰ ਸਧਾਰਨ UUID ਹੱਲਾਂ ਦੇ ਮੁਕਾਬਲੇ ਵਿੱਚ ਉੱਚਤਮ ਫਾਇਦੇ ਪ੍ਰਦਾਨ ਕਰਦੇ ਹਨ:
ਸਾਡੇ ਨੈਨੋ ID ਜਨਰੇਟਰ ਨੂੰ ਵਰਤਣਾ ਸਧਾਰਨ ਅਤੇ ਤੁਰੰਤ ਹੈ:
ਨੈਨੋ IDs ਨੂੰ ਇੱਕ ਕ੍ਰਿਪਟੋਗ੍ਰਾਫਿਕ ਤੌਰ 'ਤੇ ਮਜ਼ਬੂਤ ਰੈਂਡਮ ਨੰਬਰ ਜਨਰੇਟਰ ਅਤੇ ਇੱਕ ਕਸਟਮਾਈਜ਼ੇਬਲ ਅਲਫਾਬੇਟ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਬਣਾਇਆ ਜਾਂਦਾ ਹੈ। ਡਿਫਾਲਟ ਕਾਰਜਵਾਹੀ ਵਰਤਦੀ ਹੈ:
ਇਹ ਸੰਯੋਜਨ ID ਦੀ ਲੰਬਾਈ ਅਤੇ ਟਕਰਾਅ ਦੀ ਸੰਭਾਵਨਾ ਵਿਚ ਚੰਗਾ ਸੰਤੁਲਨ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ।
ਨੈਨੋ ID ਬਣਾਉਣ ਦਾ ਫਾਰਮੂਲਾ ਹੈ:
1id = random(alphabet, size)
2
ਜਿੱਥੇ random
ਇੱਕ ਫੰਕਸ਼ਨ ਹੈ ਜੋ alphabet
ਵਿੱਚੋਂ size
ਨੰਬਰ ਦੇ ਅੱਖਰ ਚੁਣਦਾ ਹੈ ਜਿਸ ਵਿੱਚ ਇੱਕ ਕ੍ਰਿਪਟੋਗ੍ਰਾਫਿਕ ਤੌਰ 'ਤੇ ਸੁਰੱਖਿਅਤ ਰੈਂਡਮ ਨੰਬਰ ਜਨਰੇਟਰ ਹੁੰਦਾ ਹੈ।
ਲੰਬਾਈ: ਤੁਸੀਂ ਬਣਾਏ ਗਏ ਨੈਨੋ ID ਦੀ ਲੰਬਾਈ ਨੂੰ ਸਮਰੂਪਿਤ ਕਰ ਸਕਦੇ ਹੋ। ਡਿਫਾਲਟ 21 ਅੱਖਰ ਹੈ, ਪਰ ਇਸਨੂੰ ਵੱਧ ਵਿਲੱਖਣਤਾ ਲਈ ਵਧਾਇਆ ਜਾ ਸਕਦਾ ਹੈ ਜਾਂ ਛੋਟੇ IDs ਲਈ ਘਟਾਇਆ ਜਾ ਸਕਦਾ ਹੈ।
ਅਲਫਾਬੇਟ: ID ਬਣਾਉਣ ਲਈ ਵਰਤਿਆ ਜਾਣ ਵਾਲਾ ਅੱਖਰ ਸੈੱਟ ਕਸਟਮਾਈਜ਼ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ। ਵਿਕਲਪਾਂ ਵਿੱਚ ਸ਼ਾਮਲ ਹਨ:
ਨੈਨੋ IDs ਨੂੰ ਇਸ ਤਰ੍ਹਾਂ ਡਿਜ਼ਾਈਨ ਕੀਤਾ ਗਿਆ ਹੈ:
ਟਕਰਾਅ ਦੀ ਸੰਭਾਵਨਾ ID ਦੀ ਲੰਬਾਈ ਅਤੇ ਬਣਾਏ ਗਏ IDs ਦੀ ਗਿਣਤੀ 'ਤੇ ਨਿਰਭਰ ਕਰਦੀ ਹੈ। ਟਕਰਾਅ ਦੀ ਸੰਭਾਵਨਾ ਨੂੰ ਹੇਠਾਂ ਦਿੱਤੇ ਫਾਰਮੂਲੇ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਗਣਨਾ ਕੀਤੀ ਜਾ ਸਕਦੀ ਹੈ:
1P(collision) = 1 - e^(-k^2 / (2n))
2
ਜਿੱਥੇ:
ਉਦਾਹਰਨ ਲਈ, ਡਿਫਾਲਟ ਸੈਟਿੰਗਾਂ (64 ਅੱਖਰ ਦਾ ਅਲਫਾਬੇਟ, 21 ਅੱਖਰ ਦੀ ਲੰਬਾਈ) ਨਾਲ, ਤੁਹਾਨੂੰ ~1.36e36 IDs ਬਣਾਉਣ ਦੀ ਲੋੜ ਹੈ ਤਾਂ ਜੋ ਇੱਕ ਟਕਰਾਅ ਦੀ 1% ਸੰਭਾਵਨਾ ਹੋਵੇ। ਇਸਨੂੰ ਸਮਝਣ ਲਈ:
ਸਾਡਾ ਨੈਨੋ ID ਜਨਰੇਟਰ ਵੱਖ-ਵੱਖ ਉਦਯੋਗਾਂ ਵਿੱਚ ਬਹੁਤ ਸਾਰੀਆਂ ਐਪਲੀਕੇਸ਼ਨਾਂ ਲਈ ਬਿਹਤਰ ਹੈ:
ਵਿਧੀ | ਫਾਇਦੇ | ਨੁਕਸਾਨ |
---|---|---|
ਨੈਨੋ ID | ਛੋਟਾ, URL-ਮਿੱਤਰ, ਕਸਟਮਾਈਜ਼ੇਬਲ | ਲੜੀਵਾਰ ਨਹੀਂ |
UUID | ਮਿਆਰੀ, ਬਹੁਤ ਘੱਟ ਟਕਰਾਅ ਦੀ ਸੰਭਾਵਨਾ | ਲੰਬਾ (36 ਅੱਖਰ), URL-ਮਿੱਤਰ ਨਹੀਂ |
ਆਟੋ-ਇੰਕ੍ਰਿਮੈਂਟ | ਸਧਾਰਨ, ਲੜੀਵਾਰ | ਵੰਡੇ ਗਏ ਸਿਸਟਮਾਂ ਲਈ ਉਚਿਤ ਨਹੀਂ, ਅਨੁਮਾਨਿਤ |
ULID | ਸਮੇਂ-ਸੋਰਟ ਕਰਨ ਯੋਗ, URL-ਮਿੱਤਰ | ਨੈਨੋ ID ਤੋਂ ਲੰਬਾ (26 ਅੱਖਰ) |
KSUID | ਸਮੇਂ-ਸੋਰਟ ਕਰਨ ਯੋਗ, URL-ਮਿੱਤਰ | ਨੈਨੋ ID ਤੋਂ ਲੰਬਾ (27 ਅੱਖਰ) |
ObjectID | ਟਾਈਮਸਟੈਂਪ ਅਤੇ ਮਸ਼ੀਨ ਪਛਾਣ ਪੱਤਰ ਸ਼ਾਮਲ ਕਰਦਾ ਹੈ | ਇਤਨਾ ਰੈਂਡਮ ਨਹੀਂ, 12 ਬਾਈਟ ਲੰਬਾ |
ਨੈਨੋ ID ਨੂੰ 2017 ਵਿੱਚ ਅੰਦਰੈ ਸਿਟਨਿਕ ਦੁਆਰਾ UUID ਦੇ ਇੱਕ ਹੋਰ ਸੰਕੁਚਿਤ ਵਿਕਲਪ ਵਜੋਂ ਬਣਾਇਆ ਗਿਆ ਸੀ। ਇਸਨੂੰ ਵੱਖ-ਵੱਖ ਪ੍ਰੋਗ੍ਰਾਮਿੰਗ ਭਾਸ਼ਾਵਾਂ ਅਤੇ ਵਾਤਾਵਰਣਾਂ ਵਿੱਚ ਵਰਤਣਾ ਆਸਾਨ ਬਣਾਉਣ ਲਈ ਡਿਜ਼ਾਈਨ ਕੀਤਾ ਗਿਆ ਸੀ, ਜਿਸ ਵਿੱਚ ਵੈਬ ਐਪਲੀਕੇਸ਼ਨਾਂ 'ਤੇ ਧਿਆਨ ਦਿੱਤਾ ਗਿਆ ਸੀ।
ਇੱਥੇ ਵੱਖ-ਵੱਖ ਪ੍ਰੋਗ੍ਰਾਮਿੰਗ ਭਾਸ਼ਾਵਾਂ ਵਿੱਚ ਨੈਨੋ IDs ਬਣਾਉਣ ਦੇ ਉਦਾਹਰਨ ਹਨ:
1// ਜਾਵਾਸਕ੍ਰਿਪਟ
2import { nanoid } from 'nanoid';
3const id = nanoid(); // => "V1StGXR8_Z5jdHi6B-myT"
4
1## ਪਾਇਥਨ
2import nanoid
3id = nanoid.generate() # => "kqTSU2WGQPJzuWxfifTRX"
4
1## ਰੂਬੀ
2require 'nanoid'
3id = Nanoid.generate # => "7nj0iuNXoE0GnQNuH3b7v"
4
1// ਜਾਵਾ
2import com.aventrix.jnanoid.jnanoid.NanoIdUtils;
3String id = NanoIdUtils.randomNanoId(); // => "ku-gFr4Zx9QpfvLtO_8LH"
4
1// C#
2using Nanoid;
3var id = Nanoid.Generate(); // => "xGx2iKPNOEpGQBgJKU-Ow"
4
1// PHP
2<?php
3use Hidehalo\Nanoid\Client;
4$client = new Client();
5$id = $client->generateId(); // => "V1StGXR8_Z5jdHi6B-myT"
6?>
7
1// ਰੱਸਟ
2use nanoid::nanoid;
3let id = nanoid!(); // => "V1StGXR8_Z5jdHi6B-myT"
4
1// ਗੋ
2import "github.com/matoous/go-nanoid/v2"
3id, err := gonanoid.New() // => "V1StGXR8_Z5jdHi6B-myT"
4
1// ਸਵਿਫਟ
2import NanoID
3let id = NanoID.new() // => "V1StGXR8_Z5jdHi6B-myT"
4
ਉਤਮ ਨਤੀਜੇ ਲਈ ਇਹਨਾਂ ਨੈਨੋ ID ਜਨਰੇਟਰ ਦੇ ਬਿਹਤਰ ਅਭਿਆਸਾਂ ਦੀ ਪਾਲਣਾ ਕਰੋ:
ਆਪਣੇ ਕਾਰਜ ਦੇ ਲਈ ਵਰਤਣ ਯੋਗ ਹੋਣ ਵਾਲੇ ਹੋਰ ਸੰਦੇਸ਼ ਦੀ ਖੋਜ ਕਰੋ