couchcache alternatives and similar packages
Based on the "Database" category.
Alternatively, view couchcache alternatives based on common mentions on social networks and blogs.
-
prometheus
The Prometheus monitoring system and time series database. -
Milvus
A cloud-native vector database, storage for next generation AI applications -
cockroach
CockroachDB - the open source, cloud-native distributed SQL database. -
influxdb
Scalable datastore for metrics, events, and real-time analytics -
tidb
TiDB is an open-source, cloud-native, distributed, MySQL-Compatible database for elastic scale and real-time analytics. Try AI-powered Chat2Query free at : https://tidbcloud.com/free-trial -
vitess
Vitess is a database clustering system for horizontal scaling of MySQL. -
TinyGo
Go compiler for small places. Microcontrollers, WebAssembly (WASM/WASI), and command-line tools. Based on LLVM. -
groupcache
groupcache is a caching and cache-filling library, intended as a replacement for memcached in many cases. -
rqlite
The lightweight, distributed relational database built on SQLite -
VictoriaMetrics
VictoriaMetrics: fast, cost-effective monitoring solution and time series database -
immudb
immudb - immutable database based on zero trust, SQL and Key-Value, tamperproof, data change history -
go-cache
An in-memory key:value store/cache (similar to Memcached) library for Go, suitable for single-machine applications. -
go-mysql-elasticsearch
Sync MySQL data into elasticsearch -
buntdb
BuntDB is an embeddable, in-memory key/value database for Go with custom indexing and geospatial support -
pREST
PostgreSQL ➕ REST, low-code, simplify and accelerate development, ⚡ instant, realtime, high-performance on any Postgres application, existing or new -
rosedb
🚀 A high performance NoSQL database based on bitcask, supports string, list, hash, set, and sorted set. -
xo
Command line tool to generate idiomatic Go code for SQL databases supporting PostgreSQL, MySQL, SQLite, Oracle, and Microsoft SQL Server -
dbmate
:rocket: A lightweight, framework-agnostic database migration tool. -
tiedot
A rudimentary implementation of a basic document (NoSQL) database in Go -
nutsdb
A simple, fast, embeddable, persistent key/value store written in pure Go. It supports fully serializable transactions and many data structures such as list, set, sorted set. -
GCache
An in-memory cache library for golang. It supports multiple eviction policies: LRU, LFU, ARC -
cache2go
Concurrency-safe Go caching library with expiration capabilities and access counters -
fastcache
Fast thread-safe inmemory cache for big number of entries in Go. Minimizes GC overhead -
gocraft/dbr (database records)
Additions to Go's database/sql for super fast performance and convenience. -
CovenantSQL
A decentralized, trusted, high performance, SQL database with blockchain features
Access the most powerful time series database as a service
Do you think we are missing an alternative of couchcache or a related project?
README
Couchcache
A caching service developed in Go. It provides REST APIs to access key-value pairs stored in Couchbase.
You may also consider using couchcache as a mocked service when doing TDD.
To start couchcache
Run couchcache with Couchbase server (host and port) and bucket (name and password) information
./couchcache --host=HOST --port=PORT --bucket=BUCKET --pass=PASS
Example
./couchcache --host=10.99.107.192 --port=8091 --bucket=cachebucket [email protected]
Default values
host: localhost
port: 8091
bucket: couchcache
pass: password
Cache service endpoint
http://HOST:8080/key/KEY
Examples
http://10.99.107.190:8080/key/customer_555
http://10.99.107.190:8080/key/the_service_i_want_to_mock-endpoint_a
, if you're mocking other service's endpoint
To store a key-value pair
- request
- send
POST
request to endpoint with data in body - optionally set TTL by
?ttl=TTL_IN_SEC
- send
- response
HTTP 201 Created
if storedHTTP 400 Bad Request
if key or value is invalid
To retrieve a key
- request
- send
GET
request to endpoint
- send
- response
HTTP 200 OK
with data in bodyHTTP 404 Not Found
if key doesn't existHTTP 400 Bad Request
if key is invalid
To delete a key
- request
- send
DELETE
request to endpoint
- send
- response
HTTP 204 No Content
if deletedHTTP 404 Not Found
is key doesn't existHTTP 400 Bad Request
if key is invalid
To append data for a key
- request
- send
PUT
request to endpoint with data in body
- send
- response
HTTP 200 OK
if appendedHTTP 404 Not Found
if key doesn't existHTTP 400 Bad Request
if key or value is invalid
Limitations
- Max key length is 250 bytes
- Max value size is 20 MB
See Couchbase Limits.
License
couchcache is distributed under the terms of the MIT license. See LICENSE for details.
*Note that all licence references and agreements mentioned in the couchcache README section above
are relevant to that project's source code only.