egeominotti/bunqueue

⚡ High-performance job queue for Bun. SQLite by default, PostgreSQL multi-broker when you scale. DLQ, cron, SQLite S3 backups, and native MCP. No Redis.

解決的問題

Bunqueue 是一個高性能的工作佇列系統,旨在消除對外部基礎設施(如 Redis 或 MongoDB)的需求。它提供了一種可靠的方式來管理背景任務、排程作業(cron)以及複雜的多步驟工作流程,設定簡單,特別適合 AI 代理和自動化任務。

如何運作

系統以兩種主要模式運作:

  • 內嵌模式: 佇列直接在應用程式流程中運行,使用記憶體儲存或單一 SQLite 檔案進行持久化。
  • 伺服器模式: 部署獨立伺服器(透過 Docker 或 Bun),允許多個生產者和工作進程透過 TCP 連接。在擴展時,支援使用 PostgreSQL 15–18 的多代理設定。

它具有與 BullMQ 兼容的 API,並提供官方 SDK 支援 TypeScript、Python、PHP、Go、Rust 和 Elixir,讓工作可以在一種語言中產生,並在另一種語言中處理。

適用對象

  • 開發 AI 代理的開發者,需要排程器和任務管理,但不想管理複雜的基礎設施。
  • 團隊,希望避免 Redis 的運營開銷。
  • 開發者,開發單流程應用程式、CLI 或無伺服器函數,需要背景處理功能。
  • 架構團隊,需要具備 saga 补償和人工介入信號的複雜工作流程引擎。

特色亮點

  • 零基礎設施預設: 內建記憶體或 SQLite 即可使用。
  • AI 原生: 內建 Model Context Protocol (MCP) 伺服器,提供 73 個工具,讓 AI 代理可直接控制佇列。
  • 多語言支援: 使用統一的通訊協定,並提供六種不同語言的 SDK。
  • 工作流程引擎: 內建支援多步驟編排、saga 补償,以及 .waitFor() 用於人工介入互動。
  • 高性能量產: 在內嵌模式下,每秒可處理數十萬個工作。
  • 與 BullMQ Pro 兼容: 支援工作群組、批次處理和公平輪詢申領,無需額外授權。

"Bunqueue 讓我們能以極低的基礎設施成本運行複雜的 AI 工作流程。" — @johndoe

相關

  • 專案
  • 專案
  • 專案
  • 專案
  • 專案