Base64エンコーディングを使用してMemcachedキーサイズを縮小する方法
-
21-12-2019 - |
質問
ここ読むことができます:
64ビットUIDは、ユーザーを識別するための賢い方法ですが、印刷時に吸う でる。20文字!18446744073709551616基本64エンコーディングを使用する、または 16進数でさえ、あなたはそれをかなり少しずつ切ることができます BlockQuote
しかし、私はを知っているが base64 を使ってエンコードされている場合、文字列が大きくなります。私は何かが足りないことを知っています、cos MemeCachedの人々は賢くてドキュメントで述べています。どうですか?
解決
あなたが見ているものは基本的に64ビットの 10進表現です。ビットの10進表現を符号化するのではなく、基礎となるビットを基礎64またはHEXに直接エンコードすることについて話しています。彼らは基本的にアルファベットのサイズについて話すだけです。アルファベットが大きいほど、文字列が短くなります。
64ビットとしてビット(2のアルファベット、0
または1
)は64文字です。
10進数として64ビット(10のアルファベット、0
- 9
)は20文字です。
16進数として64ビット(16のアルファベット、0
- F
)は16文字です。
etc ...
他のヒント
文字列のようにwidを脅かすことはありませんが、64ビットの数値表現を使用します。それは正確に64ビットまたは8バイトかかります。16進数を使用して8バイトをエンコードすると、 "FF11222E4456677"のような文字列があります - 16バイトになります。Base64エンコーディングを使用すると、さらに短い文字列が表示されます。
所属していません StackOverflow