展示HN:Bunqueue – 使用SQLite而非Redis的Bun任务队列
Show HN: Bunqueue – Job queue for Bun using SQLite instead of Redis

原始链接: https://github.com/egeominotti/bunqueue

适用于Bun的高性能任务队列。无外部依赖。 ``` 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); return { sent: true }; }, { embedded: true }); await queue.add('welcome', { to: '[email protected]' }); ```

## Bunqueue:Redis 的任务队列替代方案 Bunqueue 是为 Bun 运行时环境设计的新型任务队列,为单服务器部署提供了一个轻量级的 Redis 替代方案。由 kernelvoid 创建,它利用 SQLite 的性能(WAL 模式下 10万+ 操作/秒)来消除对额外基础设施的需求。 它提供嵌入式(进程内)和服务器模式,并具有优先级、延迟、重试、定时任务以及兼容 BullMQ API 等功能。虽然不适合分布式、多区域系统,但它非常适合较小的设置。 一位评论者指出,抽象的 Redis 服务存在依赖问题,停机时间会影响整个应用程序。他询问了 Bunqueue 在出现故障时的弹性和运行多个实例以实现故障转移的能力,考虑到他有大量的计划任务。Kernelvoid 愿意讨论架构并解决这些问题。
相关文章

原文

High-performance job queue for Bun. Zero external dependencies.

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);
  return { sent: true };
}, { embedded: true });

await queue.add('welcome', { to: '[email protected]' });
联系我们 contact @ memedata.com