31 lines
719 B
TypeScript
31 lines
719 B
TypeScript
import PgBoss from 'pg-boss';
|
|
|
|
async function readme() {
|
|
const boss = new PgBoss('postgres://william:mysecretpassword@localhost:5435/william');
|
|
|
|
boss.on('error', (error: Error) => console.error(error));
|
|
|
|
await boss.start();
|
|
|
|
const queue = 'some-queue';
|
|
|
|
let jobId = await boss.send(queue, { param1: 'foo' })
|
|
|
|
console.log(`created job in queue ${queue}: ${jobId}`);
|
|
|
|
await boss.work(queue, someAsyncJobHandler);
|
|
}
|
|
|
|
async function someAsyncJobHandler(job: any) {
|
|
console.log(`job ${job.id} received with data:`);
|
|
console.log(JSON.stringify(job.data));
|
|
|
|
await new Promise((resolve, reject) => {
|
|
console.log('waiting 3s')
|
|
setTimeout(() => {
|
|
resolve(job.data)
|
|
}, 3000)
|
|
});
|
|
}
|
|
|
|
readme() |