Sign inSign up

microservices/redis

By microservices

Updated almost 7 years ago

Image
0

2.4K

microservices/redis repository overview

Redis Open Microservice

Wrapper for the Redis key-value store

Open Microservice Specification Version Open Microservices Spectrum Chat Open Microservices Code of Conduct Open Microservices Commitzen PRs Welcome

Introduction

This project is an example implementation of the Open Microservice Specification, a standard originally created at Storyscript for building highly-portable "microservices" that expose the events, actions, and APIs inside containerized software.

Getting Started

The oms command-line interface allows you to interact with Open Microservices. If you're interested in creating an Open Microservice the CLI also helps validate, test, and debug your oms.yml implementation!

See the oms-cli project to learn more!

Installation
npm install -g @microservices/oms

Usage

Open Microservices CLI Usage

Once you have the oms-cli installed, you can run any of the following commands from within this project's root directory:

Actions
set

Sets 'key' to hold 'value'.

Action Arguments
Argument NameTypeRequiredDefaultDescription
keystringtrueNoneNo description provided.
valueanytrueNoneNo description provided.
REDIS_HOSTstringfalseNoneNo description provided.
REDIS_PORTintfalseNoneNo description provided.
REDIS_DBstringfalseNoneNo description provided.
REDIS_PASSWORDstringfalseNoneNo description provided.
oms run set \ 
    -a key='*****' \ 
    -a value='*****' \ 
    -e REDIS_HOST=$REDIS_HOST \ 
    -e REDIS_PORT=$REDIS_PORT \ 
    -e REDIS_DB=$REDIS_DB \ 
    -e REDIS_PASSWORD=$REDIS_PASSWORD
rpush

Insert 'value' at the end of list stored at 'key'.

Action Arguments
Argument NameTypeRequiredDefaultDescription
keystringtrueNoneNo description provided.
valueanytrueNoneNo description provided.
REDIS_HOSTstringfalseNoneNo description provided.
REDIS_PORTintfalseNoneNo description provided.
REDIS_DBstringfalseNoneNo description provided.
REDIS_PASSWORDstringfalseNoneNo description provided.
oms run rpush \ 
    -a key='*****' \ 
    -a value='*****' \ 
    -e REDIS_HOST=$REDIS_HOST \ 
    -e REDIS_PORT=$REDIS_PORT \ 
    -e REDIS_DB=$REDIS_DB \ 
    -e REDIS_PASSWORD=$REDIS_PASSWORD
lpush

Insert 'value' at the head of list stored at 'key'.

Action Arguments
Argument NameTypeRequiredDefaultDescription
keystringtrueNoneNo description provided.
valueanytrueNoneNo description provided.
REDIS_HOSTstringfalseNoneNo description provided.
REDIS_PORTintfalseNoneNo description provided.
REDIS_DBstringfalseNoneNo description provided.
REDIS_PASSWORDstringfalseNoneNo description provided.
oms run lpush \ 
    -a key='*****' \ 
    -a value='*****' \ 
    -e REDIS_HOST=$REDIS_HOST \ 
    -e REDIS_PORT=$REDIS_PORT \ 
    -e REDIS_DB=$REDIS_DB \ 
    -e REDIS_PASSWORD=$REDIS_PASSWORD
lpop

Removes and returns the first element of the list stored at 'key'.

Action Arguments
Argument NameTypeRequiredDefaultDescription
keystringtrueNoneNo description provided.
REDIS_HOSTstringfalseNoneNo description provided.
REDIS_PORTintfalseNoneNo description provided.
REDIS_DBstringfalseNoneNo description provided.
REDIS_PASSWORDstringfalseNoneNo description provided.
oms run lpop \ 
    -a key='*****' \ 
    -e REDIS_HOST=$REDIS_HOST \ 
    -e REDIS_PORT=$REDIS_PORT \ 
    -e REDIS_DB=$REDIS_DB \ 
    -e REDIS_PASSWORD=$REDIS_PASSWORD
rpop

Removes and returns the last element of the list stored at 'key'.

Action Arguments
Argument NameTypeRequiredDefaultDescription
keystringtrueNoneNo description provided.
REDIS_HOSTstringfalseNoneNo description provided.
REDIS_PORTintfalseNoneNo description provided.
REDIS_DBstringfalseNoneNo description provided.
REDIS_PASSWORDstringfalseNoneNo description provided.
oms run rpop \ 
    -a key='*****' \ 
    -e REDIS_HOST=$REDIS_HOST \ 
    -e REDIS_PORT=$REDIS_PORT \ 
    -e REDIS_DB=$REDIS_DB \ 
    -e REDIS_PASSWORD=$REDIS_PASSWORD
blpop

Removes and returns the first element of the list stored at 'key'. When there are no element in the list, the command will not return until an element got added.

Action Arguments
Argument NameTypeRequiredDefaultDescription
keystringtrueNoneNo description provided.
REDIS_HOSTstringfalseNoneNo description provided.
REDIS_PORTintfalseNoneNo description provided.
REDIS_DBstringfalseNoneNo description provided.
REDIS_PASSWORDstringfalseNoneNo description provided.
oms run blpop \ 
    -a key='*****' \ 
    -e REDIS_HOST=$REDIS_HOST \ 
    -e REDIS_PORT=$REDIS_PORT \ 
    -e REDIS_DB=$REDIS_DB \ 
    -e REDIS_PASSWORD=$REDIS_PASSWORD
brpop

Removes and returns the last element of the list stored at 'key'. When there are no element in the list, the command will not return until an elements got added.

Action Arguments
Argument NameTypeRequiredDefaultDescription
keystringtrueNoneNo description provided.
REDIS_HOSTstringfalseNoneNo description provided.
REDIS_PORTintfalseNoneNo description provided.
REDIS_DBstringfalseNoneNo description provided.
REDIS_PASSWORDstringfalseNoneNo description provided.
oms run brpop \ 
    -a key='*****' \ 
    -e REDIS_HOST=$REDIS_HOST \ 
    -e REDIS_PORT=$REDIS_PORT \ 
    -e REDIS_DB=$REDIS_DB \ 
    -e REDIS_PASSWORD=$REDIS_PASSWORD
delete

Removes 'key'.

Action Arguments
Argument NameTypeRequiredDefaultDescription
keystringtrueNoneNo description provided.
REDIS_HOSTstringfalseNoneNo description provided.
REDIS_PORTintfalseNoneNo description provided.
REDIS_DBstringfalseNoneNo description provided.
REDIS_PASSWORDstringfalseNoneNo description provided.
oms run delete \ 
    -a key='*****' \ 
    -e REDIS_HOST=$REDIS_HOST \ 
    -e REDIS_PORT=$REDIS_PORT \ 
    -e REDIS_DB=$REDIS_DB \ 
    -e REDIS_PASSWORD=$REDIS_PASSWORD
get

Returns the value of 'key'.

Action Arguments
Argument NameTypeRequiredDefaultDescription
keystringtrueNoneNo description provided.
REDIS_HOSTstringfalseNoneNo description provided.
REDIS_PORTintfalseNoneNo description provided.
REDIS_DBstringfalseNoneNo description provided.
REDIS_PASSWORDstringfalseNoneNo description provided.
oms run get \ 
    -a key='*****' \ 
    -e REDIS_HOST=$REDIS_HOST \ 
    -e REDIS_PORT=$REDIS_PORT \ 
    -e REDIS_DB=$REDIS_DB \ 
    -e REDIS_PASSWORD=$REDIS_PASSWORD
mget

Returns the values of multiple 'keys'.

Action Arguments
Argument NameTypeRequiredDefaultDescription
keyslistfalseNoneNo description provided.
REDIS_HOSTstringfalseNoneNo description provided.
REDIS_PORTintfalseNoneNo description provided.
REDIS_DBstringfalseNoneNo description provided.
REDIS_PASSWORDstringfalseNoneNo description provided.
oms run mget \ 
    -a keys='*****' \ 
    -e REDIS_HOST=$REDIS_HOST \ 
    -e REDIS_PORT=$REDIS_PORT \ 
    -e REDIS_DB=$REDIS_DB \ 
    -e REDIS_PASSWORD=$REDIS_PASSWORD
increment

Increments a number stored at 'key'.

Action Arguments
Argument NameTypeRequiredDefaultDescription
keystringtrueNoneNo description provided.
byintfalseNoneNo description provided.
REDIS_HOSTstringfalseNoneNo description provided.
REDIS_PORTintfalseNoneNo description provided.
REDIS_DBstringfalseNoneNo description provided.
REDIS_PASSWORDstringfalseNoneNo description provided.
oms run increment \ 
    -a key='*****' \ 
    -a by='*****' \ 
    -e REDIS_HOST=$REDIS_HOST \ 
    -e REDIS_PORT=$REDIS_PORT \ 
    -e REDIS_DB=$REDIS_DB \ 
    -e REDIS_PASSWORD=$REDIS_PASSWORD
decrement

Decrements a number stored at 'key'.

Action Arguments
Argument NameTypeRequiredDefaultDescription
keystringtrueNoneNo description provided.
byintfalseNoneNo description provided.
REDIS_HOSTstringfalseNoneNo description provided.
REDIS_PORTintfalseNoneNo description provided.
REDIS_DBstringfalseNoneNo description provided.
REDIS_PASSWORDstringfalseNoneNo description provided.
oms run decrement \ 
    -a key='*****' \ 
    -a by='*****' \ 
    -e REDIS_HOST=$REDIS_HOST \ 
    -e REDIS_PORT=$REDIS_PORT \ 
    -e REDIS_DB=$REDIS_DB \ 
    -e REDIS_PASSWORD=$REDIS_PASSWORD
append

Appends 'value' to a 'key'.

Action Arguments
Argument NameTypeRequiredDefaultDescription
keystringtrueNoneNo description provided.
valueanytrueNoneNo description provided.
REDIS_HOSTstringfalseNoneNo description provided.
REDIS_PORTintfalseNoneNo description provided.
REDIS_DBstringfalseNoneNo description provided.
REDIS_PASSWORDstringfalseNoneNo description provided.
oms run append \ 
    -a key='*****' \ 
    -a value='*****' \ 
    -e REDIS_HOST=$REDIS_HOST \ 
    -e REDIS_PORT=$REDIS_PORT \ 
    -e REDIS_DB=$REDIS_DB \ 
    -e REDIS_PASSWORD=$REDIS_PASSWORD
getSet

Returns the current value of 'key' and overwrites it with 'value'.

Action Arguments
Argument NameTypeRequiredDefaultDescription
keystringtrueNoneNo description provided.
valueanytrueNoneNo description provided.
REDIS_HOSTstringfalseNoneNo description provided.
REDIS_PORTintfalseNoneNo description provided.
REDIS_DBstringfalseNoneNo description provided.
REDIS_PASSWORDstringfalseNoneNo description provided.
oms run getSet \ 
    -a key='*****' \ 
    -a value='*****' \ 
    -e REDIS_HOST=$REDIS_HOST \ 
    -e REDIS_PORT=$REDIS_PORT \ 
    -e REDIS_DB=$REDIS_DB \ 
    -e REDIS_PASSWORD=$REDIS_PASSWORD
setnx

Set a 'key' to 'value' only if the key does not exist yet.

Action Arguments
Argument NameTypeRequiredDefaultDescription
keystringtrueNoneNo description provided.
valueanytrueNoneNo description provided.
REDIS_HOSTstringfalseNoneNo description provided.
REDIS_PORTintfalseNoneNo description provided.
REDIS_DBstringfalseNoneNo description provided.
REDIS_PASSWORDstringfalseNoneNo description provided.
oms run setnx \ 
    -a key='*****' \ 
    -a value='*****' \ 
    -e REDIS_HOST=$REDIS_HOST \ 
    -e REDIS_PORT=$REDIS_PORT \ 
    -e REDIS_DB=$REDIS_DB \ 
    -e REDIS_PASSWORD=$REDIS_PASSWORD
mset

Sets multiple 'key'/'value' pairs simultaneously.

Action Arguments
Argument NameTypeRequiredDefaultDescription
pairsmapfalseNoneNo description provided.
REDIS_HOSTstringfalseNoneNo description provided.
REDIS_PORTintfalseNoneNo description provided.
REDIS_DBstringfalseNoneNo description provided.
REDIS_PASSWORDstringfalseNoneNo description provided.
oms run mset \ 
    -a pairs='*****' \ 
    -e REDIS_HOST=$REDIS_HOST \ 
    -e REDIS_PORT=$REDIS_PORT \ 
    -e REDIS_DB=$REDIS_DB \ 
    -e REDIS_PASSWORD=$REDIS_PASSWORD
msetnx

Sets multiple 'key'/'value' pairs simultaneously. Only non-existing keys will be set.

Action Arguments
Argument NameTypeRequiredDefaultDescription
pairsmapfalseNoneNo description provided.
REDIS_HOSTstringfalseNoneNo description provided.
REDIS_PORTintfalseNoneNo description provided.
REDIS_DBstringfalseNoneNo description provided.
REDIS_PASSWORDstringfalseNoneNo description provided.
oms run msetnx \ 
    -a pairs='*****' \ 
    -e REDIS_HOST=$REDIS_HOST \ 
    -e REDIS_PORT=$REDIS_PORT \ 
    -e REDIS_DB=$REDIS_DB \ 
    -e REDIS_PASSWORD=$REDIS_PASSWORD
expire

Set a timeout on a 'key'.

Action Arguments
Argument NameTypeRequiredDefaultDescription
keystringtrueNoneNo description provided.
secondsinttrueNoneNo description provided.
REDIS_HOSTstringfalseNoneNo description provided.
REDIS_PORTintfalseNoneNo description provided.
REDIS_DBstringfalseNoneNo description provided.
REDIS_PASSWORDstringfalseNoneNo description provided.
oms run expire \ 
    -a key='*****' \ 
    -a seconds='*****' \ 
    -e REDIS_HOST=$REDIS_HOST \ 
    -e REDIS_PORT=$REDIS_PORT \ 
    -e REDIS_DB=$REDIS_DB \ 
    -e REDIS_PASSWORD=$REDIS_PASSWORD
rpop

RPOP a key constantly, and emit the values as events

Action Arguments
Argument NameTypeRequiredDefaultDescription
keystringtrueNoneThe key to RPOP
REDIS_HOSTstringfalseNoneNo description provided.
REDIS_PORTintfalseNoneNo description provided.
REDIS_DBstringfalseNoneNo description provided.
REDIS_PASSWORDstringfalseNoneNo description provided.
oms subscribe rpop \ 
    -a key='*****' \ 
    -e REDIS_HOST=$REDIS_HOST \ 
    -e REDIS_PORT=$REDIS_PORT \ 
    -e REDIS_DB=$REDIS_DB \ 
    -e REDIS_PASSWORD=$REDIS_PASSWORD

,##### lpop

LPOP a key constantly, and emit the values as events

Action Arguments
Argument NameTypeRequiredDefaultDescription
keystringtrueNoneThe key to LPOP
REDIS_HOSTstringfalseNoneNo description provided.
REDIS_PORTintfalseNoneNo description provided.
REDIS_DBstringfalseNoneNo description provided.
REDIS_PASSWORDstringfalseNoneNo description provided.
oms subscribe lpop \ 
    -a key='*****' \ 
    -e REDIS_HOST=$REDIS_HOST \ 
    -e REDIS_PORT=$REDIS_PORT \ 
    -e REDIS_DB=$REDIS_DB \ 
    -e REDIS_PASSWORD=$REDIS_PASSWORD

Contributing

All suggestions in how to improve the specification and this guide are very welcome. Feel free share your thoughts in the Issue tracker, or even better, fork the repository to implement your own ideas and submit a pull request.

Edit redis on CodeSandbox

This project is guided by Contributor Covenant. Please read out full Contribution Guidelines.

Additional Resources

Tag summary

Content type

Image

Digest

Size

42.8 MB

Last updated

almost 7 years ago

docker pull microservices/redis