Implementing robust in-memory cache with Go

This page summarizes the projects mentioned and recommended in the original post on dev.to

Our great sponsors
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • SaaSHub - Software Alternatives and Reviews
  • cache-story

    Demo repository for a blog post.

    We're going to put some load on the application with a custom plt.

  • plt

    ⏱️ Pocket load tester (by vearutop)

    We're going to put some load on the application with a custom plt.

  • WorkOS

    The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.

  • cache

    High performance resilient in-memory cache for Go (by bool64)

    advanced - caching using github.com/bool64/cache library that implements a number of features to improve performance and resiliency, TTL is also 3 minutes.

  • CLHT

    CLHT is a very fast and scalable (lock-based and lock-free) concurrent hash table with cache-line sized buckets.

    For mostly-read workloads standard sync.Map offers great performance, however, it degrades with more writes. There is a another custom implementation that outperforms sync.Map thanks to Cache-Line Hash Table (CLHT) data structure: github.com/puzpuzpuz/xsync.Map.

  • fastcache

    Fast thread-safe inmemory cache for big number of entries in Go. Minimizes GC overhead

    If serialization is not a problem fastcache is the best for its outstanding memory usage.

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts