Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/andy2046/gopie
go patterns
https://github.com/andy2046/gopie
barrier bloom-filter consistent-hashing count-min-sketch drf golang hyperloglog lru patterns pubsub semaphore singleton skiplist subsetting
Last synced: 30 days ago
JSON representation
go patterns
- Host: GitHub
- URL: https://github.com/andy2046/gopie
- Owner: andy2046
- License: apache-2.0
- Created: 2018-08-12T14:44:38.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2020-12-03T05:32:34.000Z (about 4 years ago)
- Last Synced: 2024-06-19T00:40:44.760Z (6 months ago)
- Topics: barrier, bloom-filter, consistent-hashing, count-min-sketch, drf, golang, hyperloglog, lru, patterns, pubsub, semaphore, singleton, skiplist, subsetting
- Language: Go
- Homepage:
- Size: 193 KB
- Stars: 32
- Watchers: 2
- Forks: 5
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
A collection of idiomatic patterns for Go language.
![gopie](./gopie.png "gopie")
## Patterns
| Pattern | Description | Status |
|:-------:|:----------- |:------:|
| [Barrier](/docs/barrier.md) | Prevents a process from proceeding until all N processes reach to the barrier | ✔ |
| [Deadline](/docs/deadline.md) | Implements Deadline pattern | ✔ |
| [DRF](/docs/drf.md) | Implements Dominant Resource Fairness | ✔ |
| [JumpHash](/docs/jumphash.md) | Provides a jump consistent hash implementation | ✔ |
| [LRU](/docs/lru.md) | Implements a LRU cache | ✔ |
| [Publish/Subscribe](/docs/pubsub.md) | Passes information to a collection of recipients who subscribed to a topic | ✔ |
| [RingHash](/docs/ringhash.md) | Provides a ring hash implementation | ✔ |
| [Semaphore](/docs/semaphore.md) | Allows controlling access to a common resource | ✔ |
| [Singleton](/docs/singleton.md) | Restricts instantiation of a type to one object | ✔ |
| [Subsetting](/docs/subset.md) | Implements client deterministic subsetting | ✔ |
| [SkipList](/docs/skiplist.md) | Implements Skip List data structure | ✔ |
| [BloomFilter](/docs/bloom.md) | Implements Bloom filter | ✔ |
| [Count-Min Sketch](/docs/countminsketch.md) | Implements Count-Min Sketch | ✔ |
| [HyperLogLog](/docs/hyperloglog.md) | Implements HyperLogLog cardinality estimation | ✔ |
| [Circuit Breaker](/docs/breaker.md) | Implements Circuit Breaker | ✔ |
| [Rate Limiter](/docs/ratelimit.md) | Implements Rate Limiter | ✔ |
| [Bit Flag](/docs/bitflag.md) | Implements Bit Flag | ✔ |
| [Base58](/docs/base58.md) | Implements Base58 Encoder | ✔ |
| [Sequence](/docs/sequence.md) | Implements snowflake similar sequence generator | ✔ |