WJb Docs - Reference

Browse APIs, configuration options, interfaces, and implementation details.

⚡ Actions
🔀 Workflow
📦 Jobs
⚙️ Runtime
💾 Persistence
🗄 Storage
🧩 Workflow Metadata
🛠 Extensions & Helpers

IWJb

Provides the primary entry point into the WJb runtime.

IWJb is the main application-facing interface used to interact with the background job system.

Purpose

Use IWJb to enqueue work and interact with the runtime.

Application
      ↓
     IWJb
      ↓
Runtime
      ↓
Store
      ↓
Worker

Most applications interact with WJb through this interface.

Responsibilities

Typical responsibilities include:

  • Enqueueing jobs
  • Scheduling work
  • Starting workflows
  • Accessing runtime functionality
  • Coordinating job execution

Execution Flow

Application
      ↓
     IWJb
      ↓
Create Job
      ↓
 Store
      ↓
 Worker
      ↓
 Action

IWJb acts as the boundary between application code and the WJb runtime.

Typical Usage

Application services commonly depend on IWJb when background work must be started.

HTTP Request
      ↓
 Application Service
      ↓
     IWJb
      ↓
 Background Job

Workflow Initiation

Many workflows begin with a call to IWJb.

Create Order
      ↓
 Enqueue Job
      ↓
 Validate
      ↓
 Process
      ↓
 Notify

Relationship to Jobs

IWJb creates and schedules jobs.

IWJb
  ↓
JobInfo

Relationship to IJobExecutor

IWJb represents the public runtime API.

IJobExecutor performs low-level job execution.

IWJb
  ↓
IJobExecutor
  ↓
Action Execution

Best Practices

Prefer IWJb as the Main Entry Point

Application code should normally interact with the runtime through IWJb.

Keep Business Logic in Actions

Use IWJb to start work.

Use actions to perform work.

Design Explicit Workflows

A workflow should remain understandable from the sequence of queued actions.

Related Types

  • IJobExecutor
  • JobInfo
  • EnqueueInfo
  • JobOptions
  • WJbBuilder

See Also

  • IJobExecutor
  • WJbBuilder
  • JobInfo
  • EnqueueInfo
An unhandled error has occurred. Reload 🗙

Rejoining the server...

Rejoin failed... trying again in seconds.

Failed to rejoin.
Please retry or reload the page.

The session has been paused by the server.

Failed to resume the session.
Please retry or reload the page.