Skip to content

Commit

Permalink
Merge pull request #291 from timgit/pubsub
Browse files Browse the repository at this point in the history
v7 - pub/sub + teamRefill
  • Loading branch information
timgit authored Dec 17, 2021
2 parents 254fa0c + b0a10b4 commit 8d34ab7
Show file tree
Hide file tree
Showing 40 changed files with 1,631 additions and 1,386 deletions.
17 changes: 8 additions & 9 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,11 +16,11 @@ async function readme() {

const queue = 'some-queue';

let jobId = await boss.publish(queue, { param1: 'foo' })
let jobId = await boss.send(queue, { param1: 'foo' })

console.log(`created job in queue ${queue}: ${jobId}`);

await boss.subscribe(queue, someAsyncJobHandler);
await boss.work(queue, someAsyncJobHandler);
}

async function someAsyncJobHandler(job) {
Expand All @@ -38,15 +38,15 @@ pg-boss relies on [SKIP LOCKED](http://blog.2ndquadrant.com/what-is-select-skip-
This will likely cater the most to teams already familiar with the simplicity of relational database semantics and operations (SQL, querying, and backups). It will be especially useful to those already relying on PostgreSQL that want to limit how many systems are required to monitor and support in their architecture.

## Features
* Backpressure-compatible subscriptions for monitoring queues on an interval (with configurable concurrency)
* Backpressure-compatible workers for polling queues
* Distributed cron-based job scheduling with database clock synchronization
* Pub/sub API for fan-out queue relationships
* Job deferral, retries (with exponential backoff), throttling, rate limiting, debouncing
* Job completion subscriptions for orchestrations/sagas
* Direct publish, fetch and completion APIs for custom integrations
* Batching API for chunked job fetching
* Job completion hooks for orchestrations/sagas
* Direct send, fetch and completion APIs for custom integrations
* Direct table access for bulk loads via COPY or INSERT
* Multi-master compatible when running multiple instances (for example, in a Kubernetes ReplicaSet)
* Automatic provisioning of required storage into a dedicated schema
* Automatic provisioning of required storage
* Automatic maintenance operations to manage table growth

## Requirements
Expand All @@ -64,8 +64,7 @@ yarn add pg-boss
```

## Documentation
* [Usage](docs/usage.md)
* [Configuration](docs/configuration.md)
* [Docs](docs/readme.md)

## Contributing

Expand Down
336 changes: 0 additions & 336 deletions docs/configuration.md

This file was deleted.

Loading

0 comments on commit 8d34ab7

Please sign in to comment.