@alterior/tasks
TypeScript icon, indicating that this package has built-in type declarations

3.11.1 • Public • Published

@alterior/tasks

Version

Provides a type-safe task queue framework coordinated via Redis.

Getting started

Install the Alterior runtime, the DI library, and the tasks module:

npm install reflect-metadata
npm install @alterior/runtime @alterior/di @alterior/tasks

A minimal example

First, build a task worker:

import { Worker } from '@alterior/tasks';
import { Logger } from '@alterior/logger';

@Task()
export class HelloPrinter extends Worker {
    name = '@myorg/mypackage:Hello';
    
    async sayHello(thing : string) {
        console.log(`Hello ${thing}!`);
    }
}

However, it is more scalable and type-safe to specify a task per class:

@Task()
export class TranscodeToFormatTask extends Worker {
    execute() {
        run(`ffmpeg /storage/${video}.mp4`);
    }
}

@Task()
export class TranscodeTask extends Worker {
    execute() {
        await TranscodeToFormatTask.enqueue({ videoId: 'abcdef', format: '1080p' });
    }
}

@Module({
    tasks: [ MyTask ]
})
export class MyModule {
}

Application.bootstrap(MyModule, [ TaskRunner ]);

Versions

Current Tags

VersionDownloads (Last 7 Days)Tag
3.11.12latest

Version History

VersionDownloads (Last 7 Days)Published
3.11.12
3.11.01
3.10.00
3.9.10
3.9.00
3.8.00
3.7.50
3.7.40
3.7.20
3.7.10
3.7.00
3.6.70
3.6.50
3.6.41
3.6.20
3.6.10
3.6.00
3.5.61
3.5.50
3.5.31
3.5.20
3.5.10
3.5.00
3.4.11
3.4.00
3.2.01
3.1.150
3.1.121
3.1.60
3.1.40
3.1.00
3.0.60
3.0.10
3.0.01
3.0.0-rc.90
3.0.0-rc.60
3.0.0-rc.50
3.0.0-rc.40
3.0.0-rc.10
3.0.0-rc.00
3.0.0-beta.1000
3.0.0-beta.980
3.0.0-beta.921
3.0.0-beta.890
3.0.0-beta.791
3.0.0-beta.750
3.0.0-beta.741
3.0.0-beta.730
3.0.0-beta.720
3.0.0-beta.710
3.0.0-beta.690
3.0.0-beta.661
3.0.0-beta.621
3.0.0-beta.611
3.0.0-beta.600
3.0.0-beta.551
3.0.0-beta.530
3.0.0-beta.510
3.0.0-beta.500
3.0.0-beta.480
3.0.0-beta.470
3.0.0-beta.400
3.0.0-beta.380
3.0.0-beta.361
3.0.0-beta.351
3.0.0-beta.340
3.0.0-beta.330
3.0.0-beta.320
3.0.0-beta.310
3.0.0-beta.300
3.0.0-beta.290
3.0.0-beta.280
3.0.0-beta.270
3.0.0-beta.260
3.0.0-beta.250
3.0.0-beta.241
3.0.0-beta.230
3.0.0-beta.220
3.0.0-beta.210
3.0.0-beta.200
3.0.0-beta.191
3.0.0-beta.180
3.0.0-beta.170
3.0.0-beta.161
3.0.0-beta.150

Package Sidebar

Install

npm i @alterior/tasks

Weekly Downloads

6

Version

3.11.1

License

MIT

Unpacked Size

451 kB

Total Files

57

Last publish

Collaborators

  • rezonant