awesome-repositories.com
Blog
awesome-repositories.com

Découvrez les meilleurs dépôts open-source grâce à notre recherche par IA.

ExplorerRecherches sélectionnéesAlternatives open sourceLogiciels auto-hébergésBlogPlan du site
ProjetÀ proposNotre méthodologiePresseServeur MCP
Mentions légalesConfidentialitéConditions d'utilisation
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
allegro avatar

allegro/bigcache

0
View on GitHub↗
8,140 stars·608 forks·Go·Apache-2.0·3 vuesallegro.tech/2016/03/writing-fast-cache-service-in-go.html↗

Bigcache

Bigcache is a thread-safe, in-memory key-value store for Go designed to minimize garbage collection pauses. It functions as a memory-optimized cache capable of storing gigabytes of data while maintaining low latency during high-volume operations.

The system avoids garbage collection overhead by managing memory through large byte arrays and manual allocation. It utilizes a circular-buffer layout to reuse space and lock-striped sharding to reduce contention during concurrent read and write access.

The project provides capabilities for high-volume in-memory caching and low-latency data retrieval, specifically targeting the management of massive datasets within distributed system environments.

Features

  • In-Memory Caches - Provides a high-performance in-memory cache capable of storing gigabytes of data with minimal latency.
  • GC-Aware Memory Management - Manages massive in-memory datasets in Go specifically to avoid frequent garbage collection cycles.
  • GC-Optimized Caching - Avoids Go garbage collector pauses by managing cache memory in large byte arrays.
  • Key-Value Stores - Implements a thread-safe in-memory key-value store for fast access across multiple goroutines.
  • Low-Latency Data Retrieval - Enables rapid access to frequently used datasets from memory to reduce database load and response times.
  • Circular Memory Buffers - Utilizes a circular-buffer memory layout to reuse space by overwriting the oldest entries when the cache fills.
  • Manual Memory Management - Allocates large chunks of memory upfront to bypass the Go runtime heap allocation overhead.
  • GC-Optimized Byte Storage - Implements data storage in large contiguous byte slices to significantly reduce garbage collection overhead.
  • Lock-Striped Sharding - Employs lock-striped sharding to minimize contention during concurrent read and write operations.
  • Distributed Caches - Provides a high-performance local cache for shared data to minimize network calls in distributed environments.
  • In-Memory Data Stores - Stores gigabytes of data in memory while bypassing garbage collection overhead to maintain high performance.
  • Offset-Based Addressing - Uses relative byte offsets within a large memory block to provide fast, zero-copy access to stored values.
  • Zero-Copy - Returns views into the underlying byte array instead of allocating new memory for retrieved values.
  • Caching Libraries - Efficient in-memory cache.
  • Bases de données - Efficient key-value cache for large datasets.

Historique des stars

Graphique de l'historique des stars pour allegro/bigcacheGraphique de l'historique des stars pour allegro/bigcache

Recherche par IA

Explorez plus de dépôts awesome

Décrivez vos besoins en langage naturel — l'IA classe des milliers de projets open source sélectionnés par pertinence.

Start searching with AI

Alternatives open source à Bigcache

Projets open source similaires, classés selon le nombre de fonctionnalités partagées avec Bigcache.
  • dgraph-io/ristrettoAvatar de dgraph-io

    dgraph-io/ristretto

    6,932Voir sur GitHub↗

    Ristretto is a high-performance in-memory cache and concurrent key-value store for Go applications. It provides a thread-safe memory store that manages strict memory bounds and employs probabilistic set filters to reduce lookup overhead. The system is distinguished by an admission-policy cache that utilizes frequency sketches and cost-based eviction to maximize hit ratios. It minimizes contention and improves throughput through the use of striped ring buffers and concurrent map sharding. The project covers a broad range of data management capabilities, including time-based expiration, item f

    Go
    Voir sur GitHub↗6,932
  • hazelcast/hazelcastAvatar de hazelcast

    hazelcast/hazelcast

    6,570Voir sur GitHub↗

    Hazelcast is a distributed data platform that combines an in-memory data grid with a stream processing engine to support real-time analytics and event-driven applications. It functions as a partitioned, distributed key-value store that replicates data across cluster nodes to provide low-latency access and high availability. The platform also serves as a distributed SQL query engine, allowing users to execute standard SQL statements against both in-memory datasets and external data sources. What distinguishes Hazelcast is its use of a distributed consensus subsystem to maintain strongly consis

    Javabig-datacachingdata-in-motion
    Voir sur GitHub↗6,570
  • tporadowski/redisAvatar de tporadowski

    tporadowski/redis

    9,987Voir sur GitHub↗

    Redis is a high-performance in-memory key-value store that functions as a distributed cache, message broker, and NoSQL database. It provides sub-millisecond read and write access to data stored in RAM and can operate as a vector database for indexing high-dimensional embeddings. The system supports a wide range of data storage and synchronization primitives, including the management of strings, hashes, lists, sets, and JSON documents. It enables real-time data operations through atomic transactions, hybrid persistence using snapshots and append-only logs, and high-availability configurations

    Credisredis-for-windowsredis-msi-installer
    Voir sur GitHub↗9,987
  • memcached/memcachedAvatar de memcached

    memcached/memcached

    14,132Voir sur GitHub↗

    Memcached is a high-performance, distributed, in-memory key-value storage and request routing engine. It functions as a volatile data store designed to accelerate dynamic applications by caching objects in RAM, thereby reducing backend database load and providing sub-millisecond response times. The system utilizes a specialized architecture that organizes memory into fixed-size slabs to minimize fragmentation and maximize throughput for high-concurrency workloads. The project distinguishes itself through a multi-threaded, lock-friendly design that scales across CPU cores and supports complex

    C
    Voir sur GitHub↗14,132
Voir les 30 alternatives à Bigcache→

Questions fréquentes

Que fait allegro/bigcache ?

Bigcache is a thread-safe, in-memory key-value store for Go designed to minimize garbage collection pauses. It functions as a memory-optimized cache capable of storing gigabytes of data while maintaining low latency during high-volume operations.

Quelles sont les fonctionnalités principales de allegro/bigcache ?

Les fonctionnalités principales de allegro/bigcache sont : In-Memory Caches, GC-Aware Memory Management, GC-Optimized Caching, Key-Value Stores, Low-Latency Data Retrieval, Circular Memory Buffers, Manual Memory Management, GC-Optimized Byte Storage.

Quelles sont les alternatives open-source à allegro/bigcache ?

Les alternatives open-source à allegro/bigcache incluent : dgraph-io/ristretto — Ristretto is a high-performance in-memory cache and concurrent key-value store for Go applications. It provides a… hazelcast/hazelcast — Hazelcast is a distributed data platform that combines an in-memory data grid with a stream processing engine to… tporadowski/redis — Redis is a high-performance in-memory key-value store that functions as a distributed cache, message broker, and NoSQL… memcached/memcached — Memcached is a high-performance, distributed, in-memory key-value storage and request routing engine. It functions as… patrickmn/go-cache — go-cache is a thread-safe, in-memory cache library for Go that stores arbitrary objects with per-item expiration… pmylund/go-cache — go-cache is a thread-safe, in-memory key-value store for single-machine applications. It provides a local caching…