hashx

package
v0.4.4 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 3, 2023 License: MIT Imports: 11 Imported by: 0

Documentation

Index

Constants

View Source
const (
	TopWeight = 100
)

Variables

This section is empty.

Functions

func Hash

func Hash(data []byte) uint64

func HmacSha256

func HmacSha256(key, data []byte) []byte

++++++++++++++++++++++++++++++++

func Md5

func Md5(data []byte) []byte

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

func Md5HexBytes

func Md5HexBytes(data []byte) string

func Md5HexString

func Md5HexString(data string) string

func Sha1

func Sha1(data []byte) []byte

++++++++++++++++++++++++++++++++

func Sha1HexBytes

func Sha1HexBytes(data []byte) string

func Sha1HexString

func Sha1HexString(data string) string

func Sha256

func Sha256(data []byte) []byte

Types

type ConsistentHash

type ConsistentHash struct {
	// contains filtered or unexported fields
}

func NewConsistentHash

func NewConsistentHash() *ConsistentHash

func NewCustomConsistentHash

func NewCustomConsistentHash(replicas int, fn HashFunc) *ConsistentHash

func (*ConsistentHash) Add

func (h *ConsistentHash) Add(node any)

Add adds the node with the number of h.replicas, the later call will overwrite the replicas of the former calls.

func (*ConsistentHash) AddWithReplicas

func (h *ConsistentHash) AddWithReplicas(node any, replicas int)

AddWithReplicas adds the node with the number of replicas, replicas will be truncated to h.replicas if it's larger than h.replicas, the later call will overwrite the replicas of the former calls.

func (*ConsistentHash) AddWithWeight

func (h *ConsistentHash) AddWithWeight(node any, weight int)

AddWithWeight adds the node with weight, the weight can be 1 to 100, indicates the percent, the later call will overwrite the replicas of the former calls.

func (*ConsistentHash) Get

func (h *ConsistentHash) Get(v any) (any, bool)

func (*ConsistentHash) Remove

func (h *ConsistentHash) Remove(node any)

type HashFunc

type HashFunc func(data []byte) uint64

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL