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