diff --git a/hash.go b/hash.go index 9d10327..ffd1bda 100644 --- a/hash.go +++ b/hash.go @@ -13,12 +13,20 @@ import ( "github.com/spaolacci/murmur3" ) +// hash ... +// +// Author : go_developer@163.com<白茶清欢> +// +// Date : 14:41 2022/5/14 +type hash struct { +} + // GetHashID ... // // Author : go_developer@163.com<白茶清欢> // // Date : 11:04 下午 2021/2/24 -func GetHashID(key interface{}) uint64 { +func (h *hash) GetHashID(key interface{}) uint64 { return murmur3.Sum64([]byte(fmt.Sprintf("%v", key))) } @@ -27,6 +35,6 @@ func GetHashID(key interface{}) uint64 { // Author : go_developer@163.com<白茶清欢> // // Date : 11:07 下午 2021/2/24 -func GetHashIDMod(key interface{}, shard int) int { - return int(GetHashID(key) % uint64(shard)) +func (h *hash) GetHashIDMod(key interface{}, shard int) int { + return int(h.GetHashID(key) % uint64(shard)) } diff --git a/init.go b/init.go index e5b69ca..e13e1fa 100644 --- a/init.go +++ b/init.go @@ -12,9 +12,12 @@ var ( Cli *cli // File ... File *file + // Hash ... + Hash *hash ) func init() { Cli = &cli{} File = &file{} + Hash = &hash{} }