0.0.3 • Published 10 months ago

@raito-cache/client v0.0.3

Weekly downloads
-
License
MIT
Repository
github
Last release
10 months ago

NPM Version Node.js CI Open Source Love MIT License

raito-expressjs

Table of contents

About

raito-client - is an API for communicating with Raito cache server.

Getting started

!IMPORTANT Node.js 18.x+ version must be installed in your OS.

1. Install server

$ yarn add @raito-cache/client

2. Connect to Raito

import { Raito } from '@raito-cache/client';

const raito = new Raito(); // defaul connection is localhost:9180

API

Connect to Raito

new Raito(); // Connect to localhost:9180
new Raito(7180); // localhost:7180
new Raito('raito://localhost:9180'); // localhost:9180
new Raito('raito://localhost:9180?ttl=5000'); // localhost:9180 and ttl 5s
new Raito({
  port: 9180,
  host: 'localhost',
  ttl: 10000, // Cache records time to live
  password: 'superpass123', 
});

Usage

Raito class

import { Raito } from '@raito-cache/client';

const raito = new Raito();

await raito.set('key', { data: 'some data' }); // Create new record
await raito.set('key2', 'other data', 15000); // Create new record with 15s ttl

await raito.get('key2'); // Output: { key: 'key', data: 'other data', createdAt: Date, ttl: 15000 }
await raito.clear('key'); // Deletes record

await raito.shutdown(); // Close connection

Raito Deployment

  1. Pull docker image:
    $ docker pull stbestich/raito-cache:latest_amd64
  2. Run it
    $ docker run -e HOST=<host> -p <port>:9180 -it stbestich/raito-cache

Use with docker-compose

services:
  raito-cache:
    image: stbestich/raito-cache:latest
    ports:
      - "${PORT:-9180}:${PORT:-9180}"
      - "${PORT:-9181}:${PORT:-9181" # Define second port if you need http proxy
    env_file:
      - .env
    environment:
      NODE_ENV: production
      PORT: ${PORT:-9180}
      HOST: ${HOST:-0.0.0.0}
      TTL: ${TTL}
      PASSWORD: ${PASSWORD}
    tty: true
    stdin_open: true

Contributing

Please read CONTRIBUTING.md for details on our code of conduct, and the process for submitting pull requests to us.

Changelog

Project changes are writen in changelog, see the CHANGELOG.md.

We use SemVer for versioning. For the versions available, see the tags on this repository. For the versions supported, see the SECURITY.md.

Authors

License

This project is licensed under the MIT License - see the LICENSE.md

0.0.3

10 months ago

0.0.2

11 months ago