小さなurlリンクをトロールするだけでは不十分なため、小さなurlの人々はランダムトークンを使用するのが好きです。 「#2はどこに行くの?」 "かっこいい、イケてる!" 「#3はどこへ行くの?」 「もっと涼しい!」ランダムな文字を入力することはできますが、有効な値に達する可能性はほとんどありません。
キーはかなりまばらであるため(それぞれ36 *の可能性がある4つの値は1,679,616の一意の値を提供し、5は60,466,176を提供します)、衝突の可能性は低く(実際、これは設計の望ましい部分です)、優れたSQLインデックスによりルックアップは簡単です(実際、URLのプライマリルックアップであるため、URLを中心に最適化されます)。
ルックアップを避けて自動インクリメントを解除したい場合は、整数を一見ランダムな文字列に変換し、元に戻す機能を備えた関数を作成できます。したがって、「1」は「54jcdn」になり、「2」は「pqmw21」になります。 Base64エンコーディングに似ていますが、連続した文字を使用しません。
(*)私は実際には36文字未満を使用するのが好きです。シングルケース、母音、および類似の文字(1、l、I)は使用しません。これにより、偶発的な冒とく的な言葉が防止され、誰かが他の誰かに価値を話しやすくなります。 「O」の代わりに「0」を使用して、類似した文字を相互にマッピングすることもできます。完全にマシンベースの場合は、大文字と小文字、およびすべての数字を使用して、さらに大きな可能性を引き出すことができます。