現在、MD5を使用して、memcachedで検索するキーをハッシュしています。
基本的な例は次のとおりです。
$sql = "SELECT * FROM articles WHERE id = 1";
$key = md5($sql);
if (!$results = $memcache->get($key)) {
$results = $db->query($sql);
$memcache->set($key, $results);
}
MD5を使用してキーをハッシュするため、キーサイズはすべて32バイトです。
代わりにcrc32を使用してキーをハッシュし、メモリを節約することを検討しています。
$key = hash('crc32', $sql);
これにより、わずか8バイトのキーが生成されます。
これは、キーハッシュとしてMD5を置き換えるのに十分なソリューションですか?キーとの潜在的な衝突の増加はありますか?