xxHash

xxHash 是一种非常快速的非加密哈希算法,工作速度接近RAM限制。 它提出了两种方式,32位和64位。

这个包提供了一个简单的API:

    func New() hash.Hash64
    func Sum64(b []byte) uint64
    func Sum64String(s string) uint64

使用案例

package main

import (
	"fmt"
	"github.com/cespare/xxhash"
)

func main() {
	data := []byte{1, 2, 3}
	fmt.Println(xxhash.Sum64(data)) // 返回 8376154270085342629
	fmt.Println(xxhash.Sum64String(string(data))) // 返回 8376154270085342629
}

源码分析

  • func Sum64(b []byte) uint64
  • func Sum64String(s string) uint64