Ecosyste.ms: Awesome

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

Awesome Lists | Featured Topics | Projects

https://github.com/comandeo/crystal-memcached

Memcached client for Crystal language
https://github.com/comandeo/crystal-memcached

Last synced: 6 days ago
JSON representation

Memcached client for Crystal language

Awesome Lists containing this project

README

        

# Crystal Memcached

[![Crystal CI](https://github.com/comandeo/crystal-memcached/actions/workflows/crystal.yml/badge.svg)](https://github.com/comandeo/crystal-memcached/actions/workflows/crystal.yml)

Pure Crystal implementation of a Memcached client.

## Installation

Add this to your application's `shard.yml`:

```yaml
dependencies:
memcached:
github: comandeo/crystal-memcached
```

## Usage

```crystal
require "memcached"

client = Memcached::Client.new
client.set("Key", "Value")
value = client.get("Key")
```

## What is implemented

* get
* multi-get for faster getting multiple keys values (read [here](https://code.google.com/p/memcached/wiki/BinaryProtocolRevamped#Get,_Get_Quietly,_Get_Key,_Get_Key_Quietly) for details)
* set (with or without expiration)
* data version check
* delete
* append
* prepend
* touch
* flush
* increment
* decrement

## Contributing

1. Fork it ( https://github.com/comandeo/crystal-memcached/fork )
2. Create your feature branch (git checkout -b my-new-feature)
3. Commit your changes (git commit -am 'Add some feature')
4. Push to the branch (git push origin my-new-feature)
5. Create a new Pull Request

## Contributors

- [comandeo](https://github.com/comandeo) Dmitry Rybakov - creator, maintainer