
egeominotti/bunqueue
Developer toolsЭта страница переведена автоматически. Технические детали смотрите в оригинале. Открыть оригинал
⚡ Высокопроизводительная очередь заданий для Bun. SQLite по умолчанию, мультиброкер PostgreSQL при масштабировании. DLQ, cron, резервные копии SQLite S3 и нативный MCP. Нет Redis.
Обзор
Высокапроизводительная очередь заданий для Bun. Память или SQLite с одним файлом; мультиброкер PostgreSQL 15–18 при масштабировании. DLQ, cron, резервные копии SQLite S3 и нативный MCP. Создано для AI-агентов и автоматизации. Нет Redis. Документация · Быстрый старт · Бенчмарки · npm Вот и всё. Очередь + Worker в одном объекте, сохраняется в одном файле SQLite. Нет Redis, нет конфигурации, нет настройки. MSGPACKR — единственная зависимость во время выполнения; cron, SQLite, S3, HTTP и WebSocket используют встроенные системы Bun. Очередь также работает как автономный сервер. Память — это нулевая конфигурация по умолчанию; SQLite — это опция с нулевым уровнем инфраструктуры: Для нескольких активных брокеров репозиторий включает топологию, закреплённую на PostgreSQL 18.6: Он запускает два брокера против одной базы данных/пространства имён. PostgreSQL работает только на сервере; встроенный режим продолжает использовать память/SQLite. При изменении пароля предоставляется оба значения Compose при изменении пароля, при этом в URL кодируются только зарезервированные символы в процентах. MySQL не поддерживается.
Обзор (машинный перевод)
Высокапроизводительная очередь заданий для Bun. Память или однофайлный SQLite; PostgreSQL 15–18 мультиброкер при масштабировании.
DLQ, cron, резервные копии SQLite S3 и нативный MCP. Создано для AI-агентов и автоматизации. Нет Redis.
Документация · Быстрый старт · Видеокурс · Бенчмарки · NPM
Быстрый старт
Ваша первая работа примерно через минуту. В Bun очередь идёт внутри вашего приложения, без Для начала сервера:
Вот и всё: нет Redis, нет конфигурации, нет настройки. Работник всё время ждёт новых вакансий
пока не остановишь его Ctrl+C. В примере задания сохраняются в памяти; pass
dataPath: './jobs.db' в очередь и к работнику, чтобы сохранить их в одном
SQLite. msgpackr — единственная зависимость во время выполнения; cron, SQLite, S3, HTTP и
WebSocket использует встроенные устройства Bun.
Не на Bun? Запускай сервер, подключайся откуда угодно
Запускайте сервер с Docker (Bun не нужен) или, если установлен Bun, с
bunx bunqueue start --host 127.0.0.1 --data-path ./bunqueue.db:
Затем в другом терминале добавьте задание и обработайте её из Node.js:
Deno, Python, PHP, Go, Rust и Elixir делают те же три шага: см. Быстрый старт для каждого языка.
Эта страница переведена автоматически. Технические детали смотрите в оригинале.
README
Показан фрагмент оригинального README. Открыть оригинал.
High-performance job queue for Bun. Memory or one-file SQLite; PostgreSQL 15–18 multi-broker when you scale. DLQ, cron, SQLite S3 backups, and native MCP. Built for AI agents and automation. No Redis.
Documentation · Quick Start · Video course · Benchmarks · npm
Quickstart
Your first job in about a minute. On Bun the queue runs inside your app, with no server to start:
bun add bunqueue
// jobs.ts
import { Queue, Worker } from 'bunqueue/client';
const queue = new Queue('emails', { embedded: true });
const worker = new Worker(
'emails',
async (job) => {
console.log('Processing:', job.data.to);
return { sent: true };
},
{ embedded: true }
);
worker.on('error', (error) => console.error(error));
await queue.add('welcome', { to: '[email protected]' });
bun jobs.ts
# Processing: [email protected]
That’s it: no Redis, no config, no setup. The worker keeps waiting for more jobs
until you stop it with Ctrl+C. The example keeps jobs in memory; pass
dataPath: './jobs.db' to the queue and the worker to persist them in one
SQLite file. msgpackr is the only runtime dependency; cron, SQLite, S3, HTTP and
WebSocket use Bun’s built-ins.
Not on Bun? Run the server, connect from anywhere
Start the server with Docker (no Bun needed) or, if Bun is installed, with
bunx bunqueue start --host 127.0.0.1 --data-path ./bunqueue.db:
docker run -d --name bunqueue \
--restart unless-stopped \
-p 127.0.0.1:6789:6789 \
-p 127.0.0.1:6790:6790 \
-v bunqueue-data:/app/data \
egeominotti/bunqueue:alpine
curl --fail http://127.0.0.1:6790/health
Установка
docker run -d --name bunqueue \Конфигурация
// Claude Desktop / Cursor / Windsurf
{
"mcpServers": {
"bunqueue": {
"command": "bunx",
"args": ["--package=bunqueue", "bunqueue-mcp"],
"env": { "BUNQUEUE_MCP_PROFILE": "agent" }
}
}
}