0.1.4 • Published 7 years ago

qedis v0.1.4

Weekly downloads
1
License
MIT
Repository
github
Last release
7 years ago

#Introduction This is a distributable queue for redis. It has At-Least-One consistency. You can setup your workers on multiple nodes. Its compatible with typescript 2.0 +

#Example

see Example.ts

#Classes

##Queue ###constructor(Redis.RedisClient, string)

It takes a redis client and a string as the queue name.

###async add(Task): Promise\<void>

Push a task to the queue

###async fetch(): Promise\<Task>

Await and fetch a task, this can be called multiple times and resolved seperately, each time fetch() is called, a new defered promise will be returned.

###async acknowledge(Task, boolean): Promise\<void>

Acknowledges a task, remove it from queue. second boolean argument specifies if the record itself should be also deleted.

###start()

Start pulling for task

###stop()

Stop pulling for task

###setMaxInterval(number)

Set the max pulling interval that this queue could increment to (while idling)

###setInitialInterval(number)

Set the interval to be at after a task if fetched (everytime a task is fetched, interval will be reset to this value, and if not, it will increment)

###setStep(number)

Set step how much the interval increment each time (while idleing)

###setRetryTimeout(number)

Each time a task is fetched, it will be put to a pending queue (acknowledge removes it). During each time of pulling procedure, task will be fetched from pending first and check if it exceeds the retry timeout. Otherwise, task will be retrieved for queue, where new tasks resides in.

##Task

Task is a Map, with key: string, and value: number | string | boolean.

###id: string ###createdAt: number ###updatedAt: number ###...

0.1.4

7 years ago

0.1.3

7 years ago

0.1.2

7 years ago

0.1.1

7 years ago

0.1.0

7 years ago

0.0.4

8 years ago

0.0.3

8 years ago

0.0.2

8 years ago