Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/arvrao/inmemorydatastore-app

Distributed in-memory key-value store implemented as a Spring Boot service. It provides a fast, scalable, and fault-tolerant solution for storing and retrieving data with automatic expiration capabilities.
https://github.com/arvrao/inmemorydatastore-app

consistent-hash-algorithm gradle minheap springboot

Last synced: 5 days ago
JSON representation

Distributed in-memory key-value store implemented as a Spring Boot service. It provides a fast, scalable, and fault-tolerant solution for storing and retrieving data with automatic expiration capabilities.

Awesome Lists containing this project

README

        

## About
A distributed in-memory key-value store implemented as a Spring Boot service. It provides a fast, scalable, and fault-tolerant solution for storing and retrieving data with automatic expiration capabilities.

## Summary
Simulated a distributed environment with multiple nodes within a single application instance. The consistent hashing algorithm is used to distribute keys across these virtual nodes.

When a key-value pair is added, the consistent hashing algorithm determines which node should store that data.
The consistentHash.get(key) call determines which node should hold the data for that key.

Check Node distribution: return a map showing how many key-value pairs are stored in each node.
Concept of virtual nodes where each node has associated key-value pair stored in it.
When key-value pair is added, the consistent hashing algorithm determines which node should store that data based on the hash of the key.