bunqueue 1.6.8 → 1.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/application/queueManager.d.ts +4 -0
- package/dist/application/queueManager.d.ts.map +1 -1
- package/dist/application/queueManager.js +24 -2
- package/dist/application/queueManager.js.map +1 -1
- package/dist/cli/index.d.ts.map +1 -1
- package/dist/cli/index.js +1 -3
- package/dist/cli/index.js.map +1 -1
- package/dist/client/index.d.ts +3 -1
- package/dist/client/index.d.ts.map +1 -1
- package/dist/client/index.js +2 -0
- package/dist/client/index.js.map +1 -1
- package/dist/client/queue.d.ts +25 -5
- package/dist/client/queue.d.ts.map +1 -1
- package/dist/client/queue.js +285 -41
- package/dist/client/queue.js.map +1 -1
- package/dist/client/tcpClient.d.ts +72 -0
- package/dist/client/tcpClient.d.ts.map +1 -0
- package/dist/client/tcpClient.js +371 -0
- package/dist/client/tcpClient.js.map +1 -0
- package/dist/client/tcpPool.d.ts +41 -0
- package/dist/client/tcpPool.d.ts.map +1 -0
- package/dist/client/tcpPool.js +110 -0
- package/dist/client/tcpPool.js.map +1 -0
- package/dist/client/types.d.ts +24 -1
- package/dist/client/types.d.ts.map +1 -1
- package/dist/client/types.js.map +1 -1
- package/dist/client/worker.d.ts +37 -5
- package/dist/client/worker.d.ts.map +1 -1
- package/dist/client/worker.js +320 -45
- package/dist/client/worker.js.map +1 -1
- package/dist/domain/types/command.d.ts +16 -1
- package/dist/domain/types/command.d.ts.map +1 -1
- package/dist/infrastructure/backup/s3Backup.d.ts.map +1 -1
- package/dist/infrastructure/backup/s3Backup.js +2 -1
- package/dist/infrastructure/backup/s3Backup.js.map +1 -1
- package/dist/infrastructure/server/handler.d.ts.map +1 -1
- package/dist/infrastructure/server/handler.js +7 -1
- package/dist/infrastructure/server/handler.js.map +1 -1
- package/dist/infrastructure/server/handlers/core.d.ts +1 -1
- package/dist/infrastructure/server/handlers/core.d.ts.map +1 -1
- package/dist/infrastructure/server/handlers/core.js +12 -3
- package/dist/infrastructure/server/handlers/core.js.map +1 -1
- package/dist/infrastructure/server/handlers/monitoring.d.ts +4 -1
- package/dist/infrastructure/server/handlers/monitoring.d.ts.map +1 -1
- package/dist/infrastructure/server/handlers/monitoring.js +18 -0
- package/dist/infrastructure/server/handlers/monitoring.js.map +1 -1
- package/dist/infrastructure/server/http.d.ts.map +1 -1
- package/dist/infrastructure/server/http.js +2 -1
- package/dist/infrastructure/server/http.js.map +1 -1
- package/dist/infrastructure/server/rateLimiter.js +1 -1
- package/dist/infrastructure/server/rateLimiter.js.map +1 -1
- package/dist/mcp/index.js +2 -1
- package/dist/mcp/index.js.map +1 -1
- package/dist/shared/version.d.ts +1 -1
- package/dist/shared/version.d.ts.map +1 -1
- package/dist/shared/version.js +3 -27
- package/dist/shared/version.js.map +1 -1
- package/package.json +2 -2
package/dist/client/queue.js
CHANGED
|
@@ -1,18 +1,20 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Queue - BullMQ-style API
|
|
3
|
+
* Default: TCP connection to localhost:6789
|
|
4
|
+
* Optional: embedded mode with { embedded: true }
|
|
3
5
|
*/
|
|
4
6
|
import { getSharedManager } from './manager';
|
|
7
|
+
import { TcpConnectionPool } from './tcpPool';
|
|
5
8
|
import { toPublicJob, toDlqEntry } from './types';
|
|
6
9
|
import { jobId } from '../domain/types/job';
|
|
7
10
|
import { shardIndex } from '../shared/hash';
|
|
8
11
|
import * as dlqOps from '../application/dlqManager';
|
|
9
|
-
/** Helper to get shard from manager */
|
|
12
|
+
/** Helper to get shard from manager (embedded mode only) */
|
|
10
13
|
function getShard(manager, queue) {
|
|
11
14
|
const idx = shardIndex(queue);
|
|
12
|
-
// Access internal shards array (safe cast for embedded mode)
|
|
13
15
|
return manager.shards[idx];
|
|
14
16
|
}
|
|
15
|
-
/** Helper to create DLQ context */
|
|
17
|
+
/** Helper to create DLQ context (embedded mode only) */
|
|
16
18
|
function getDlqContext(manager) {
|
|
17
19
|
return {
|
|
18
20
|
shards: manager.shards,
|
|
@@ -25,31 +27,111 @@ function toDomainFilter(filter) {
|
|
|
25
27
|
return undefined;
|
|
26
28
|
return filter;
|
|
27
29
|
}
|
|
30
|
+
/** Check if embedded mode should be forced (for tests) */
|
|
31
|
+
const FORCE_EMBEDDED = process.env.BUNQUEUE_EMBEDDED === '1';
|
|
28
32
|
/**
|
|
29
33
|
* Queue class for adding and managing jobs
|
|
34
|
+
* Default: connects to bunqueue server via TCP
|
|
35
|
+
* Use { embedded: true } for in-process mode
|
|
36
|
+
* Set BUNQUEUE_EMBEDDED=1 env var to force embedded mode
|
|
30
37
|
*/
|
|
31
38
|
export class Queue {
|
|
32
39
|
name;
|
|
33
40
|
opts;
|
|
41
|
+
embedded;
|
|
42
|
+
tcpPool;
|
|
34
43
|
constructor(name, opts = {}) {
|
|
35
44
|
this.name = name;
|
|
36
45
|
this.opts = opts;
|
|
46
|
+
this.embedded = opts.embedded ?? FORCE_EMBEDDED;
|
|
47
|
+
if (this.embedded) {
|
|
48
|
+
this.tcpPool = null;
|
|
49
|
+
}
|
|
50
|
+
else {
|
|
51
|
+
const connOpts = opts.connection ?? {};
|
|
52
|
+
// Always use pool - default poolSize = 4, user can override
|
|
53
|
+
const poolSize = connOpts.poolSize ?? 4;
|
|
54
|
+
// Use connection pool (always enabled for TCP mode)
|
|
55
|
+
this.tcpPool = new TcpConnectionPool({
|
|
56
|
+
host: connOpts.host ?? 'localhost',
|
|
57
|
+
port: connOpts.port ?? 6789,
|
|
58
|
+
token: connOpts.token,
|
|
59
|
+
poolSize,
|
|
60
|
+
});
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
/** Get TCP connection pool */
|
|
64
|
+
get tcp() {
|
|
65
|
+
if (!this.tcpPool) {
|
|
66
|
+
throw new Error('No TCP connection available');
|
|
67
|
+
}
|
|
68
|
+
return this.tcpPool;
|
|
37
69
|
}
|
|
38
70
|
/** Add a job to the queue */
|
|
39
71
|
async add(name, data, opts = {}) {
|
|
40
72
|
const merged = { ...this.opts.defaultJobOptions, ...opts };
|
|
73
|
+
if (this.embedded) {
|
|
74
|
+
return this.addEmbedded(name, data, merged);
|
|
75
|
+
}
|
|
76
|
+
return this.addTcp(name, data, merged);
|
|
77
|
+
}
|
|
78
|
+
async addTcp(name, data, opts) {
|
|
79
|
+
const response = await this.tcp.send({
|
|
80
|
+
cmd: 'PUSH',
|
|
81
|
+
queue: this.name,
|
|
82
|
+
data: { name, ...data },
|
|
83
|
+
priority: opts.priority,
|
|
84
|
+
delay: opts.delay,
|
|
85
|
+
maxAttempts: opts.attempts,
|
|
86
|
+
backoff: opts.backoff,
|
|
87
|
+
timeout: opts.timeout,
|
|
88
|
+
customId: opts.jobId,
|
|
89
|
+
removeOnComplete: opts.removeOnComplete,
|
|
90
|
+
removeOnFail: opts.removeOnFail,
|
|
91
|
+
});
|
|
92
|
+
if (!response.ok) {
|
|
93
|
+
const errorMsg = response.error;
|
|
94
|
+
throw new Error(errorMsg ?? 'Failed to add job');
|
|
95
|
+
}
|
|
96
|
+
const jobId = response.id;
|
|
97
|
+
return {
|
|
98
|
+
id: jobId,
|
|
99
|
+
name,
|
|
100
|
+
data,
|
|
101
|
+
queueName: this.name,
|
|
102
|
+
attemptsMade: 0,
|
|
103
|
+
timestamp: Date.now(),
|
|
104
|
+
progress: 0,
|
|
105
|
+
updateProgress: async (progress, message) => {
|
|
106
|
+
await this.tcp.send({
|
|
107
|
+
cmd: 'Progress',
|
|
108
|
+
id: jobId,
|
|
109
|
+
progress,
|
|
110
|
+
message,
|
|
111
|
+
});
|
|
112
|
+
},
|
|
113
|
+
log: async (message) => {
|
|
114
|
+
await this.tcp.send({
|
|
115
|
+
cmd: 'AddLog',
|
|
116
|
+
id: jobId,
|
|
117
|
+
message,
|
|
118
|
+
});
|
|
119
|
+
},
|
|
120
|
+
};
|
|
121
|
+
}
|
|
122
|
+
async addEmbedded(name, data, opts) {
|
|
41
123
|
const manager = getSharedManager();
|
|
42
124
|
const job = await manager.push(this.name, {
|
|
43
125
|
data: { name, ...data },
|
|
44
|
-
priority:
|
|
45
|
-
delay:
|
|
46
|
-
maxAttempts:
|
|
47
|
-
backoff:
|
|
48
|
-
timeout:
|
|
49
|
-
customId:
|
|
50
|
-
removeOnComplete:
|
|
51
|
-
removeOnFail:
|
|
52
|
-
repeat:
|
|
126
|
+
priority: opts.priority,
|
|
127
|
+
delay: opts.delay,
|
|
128
|
+
maxAttempts: opts.attempts,
|
|
129
|
+
backoff: opts.backoff,
|
|
130
|
+
timeout: opts.timeout,
|
|
131
|
+
customId: opts.jobId,
|
|
132
|
+
removeOnComplete: opts.removeOnComplete,
|
|
133
|
+
removeOnFail: opts.removeOnFail,
|
|
134
|
+
repeat: opts.repeat,
|
|
53
135
|
});
|
|
54
136
|
return toPublicJob(job, name);
|
|
55
137
|
}
|
|
@@ -57,9 +139,52 @@ export class Queue {
|
|
|
57
139
|
async addBulk(jobs) {
|
|
58
140
|
if (jobs.length === 0)
|
|
59
141
|
return [];
|
|
142
|
+
if (this.embedded) {
|
|
143
|
+
return this.addBulkEmbedded(jobs);
|
|
144
|
+
}
|
|
145
|
+
return this.addBulkTcp(jobs);
|
|
146
|
+
}
|
|
147
|
+
async addBulkTcp(jobs) {
|
|
148
|
+
const now = Date.now();
|
|
149
|
+
const jobInputs = jobs.map(({ name, data, opts }) => {
|
|
150
|
+
const merged = { ...this.opts.defaultJobOptions, ...opts };
|
|
151
|
+
return {
|
|
152
|
+
data: { name, ...data },
|
|
153
|
+
priority: merged.priority,
|
|
154
|
+
delay: merged.delay,
|
|
155
|
+
maxAttempts: merged.attempts,
|
|
156
|
+
backoff: merged.backoff,
|
|
157
|
+
timeout: merged.timeout,
|
|
158
|
+
customId: merged.jobId,
|
|
159
|
+
removeOnComplete: merged.removeOnComplete,
|
|
160
|
+
removeOnFail: merged.removeOnFail,
|
|
161
|
+
};
|
|
162
|
+
});
|
|
163
|
+
const response = await this.tcp.send({
|
|
164
|
+
cmd: 'PUSHB',
|
|
165
|
+
queue: this.name,
|
|
166
|
+
jobs: jobInputs,
|
|
167
|
+
});
|
|
168
|
+
if (!response.ok) {
|
|
169
|
+
const errorMsg = response.error;
|
|
170
|
+
throw new Error(errorMsg ?? 'Failed to add jobs');
|
|
171
|
+
}
|
|
172
|
+
const ids = response.ids;
|
|
173
|
+
return ids.map((id, i) => ({
|
|
174
|
+
id,
|
|
175
|
+
name: jobs[i].name,
|
|
176
|
+
data: jobs[i].data,
|
|
177
|
+
queueName: this.name,
|
|
178
|
+
attemptsMade: 0,
|
|
179
|
+
timestamp: now,
|
|
180
|
+
progress: 0,
|
|
181
|
+
updateProgress: async () => { },
|
|
182
|
+
log: async () => { },
|
|
183
|
+
}));
|
|
184
|
+
}
|
|
185
|
+
async addBulkEmbedded(jobs) {
|
|
60
186
|
const manager = getSharedManager();
|
|
61
187
|
const now = Date.now();
|
|
62
|
-
// Map to JobInput format
|
|
63
188
|
const inputs = jobs.map(({ name, data, opts }) => {
|
|
64
189
|
const merged = { ...this.opts.defaultJobOptions, ...opts };
|
|
65
190
|
return {
|
|
@@ -75,9 +200,7 @@ export class Queue {
|
|
|
75
200
|
repeat: merged.repeat,
|
|
76
201
|
};
|
|
77
202
|
});
|
|
78
|
-
// Single batch push (optimized: single lock, batch INSERT)
|
|
79
203
|
const jobIds = await manager.pushBatch(this.name, inputs);
|
|
80
|
-
// Create public job objects
|
|
81
204
|
return jobIds.map((id, i) => ({
|
|
82
205
|
id: String(id),
|
|
83
206
|
name: jobs[i].name,
|
|
@@ -92,79 +215,184 @@ export class Queue {
|
|
|
92
215
|
}
|
|
93
216
|
/** Get a job by ID */
|
|
94
217
|
async getJob(id) {
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
218
|
+
if (this.embedded) {
|
|
219
|
+
const manager = getSharedManager();
|
|
220
|
+
const job = await manager.getJob(jobId(id));
|
|
221
|
+
if (!job)
|
|
222
|
+
return null;
|
|
223
|
+
const jobData = job.data;
|
|
224
|
+
return toPublicJob(job, jobData?.name ?? 'default');
|
|
225
|
+
}
|
|
226
|
+
const response = await this.tcp.send({
|
|
227
|
+
cmd: 'GetJob',
|
|
228
|
+
id,
|
|
229
|
+
});
|
|
230
|
+
if (!response.ok || !response.job)
|
|
98
231
|
return null;
|
|
99
|
-
const jobData = job
|
|
100
|
-
|
|
232
|
+
const jobData = response.job;
|
|
233
|
+
const data = jobData.data;
|
|
234
|
+
const attempts = jobData.attempts;
|
|
235
|
+
const createdAt = jobData.createdAt;
|
|
236
|
+
const progress = jobData.progress;
|
|
237
|
+
return {
|
|
238
|
+
id: String(jobData.id),
|
|
239
|
+
name: data?.name ?? 'default',
|
|
240
|
+
data: jobData.data,
|
|
241
|
+
queueName: this.name,
|
|
242
|
+
attemptsMade: attempts ?? 0,
|
|
243
|
+
timestamp: createdAt ?? Date.now(),
|
|
244
|
+
progress: progress ?? 0,
|
|
245
|
+
updateProgress: async () => { },
|
|
246
|
+
log: async () => { },
|
|
247
|
+
};
|
|
101
248
|
}
|
|
102
249
|
/** Remove a job by ID */
|
|
103
250
|
remove(id) {
|
|
104
|
-
|
|
105
|
-
|
|
251
|
+
if (this.embedded) {
|
|
252
|
+
const manager = getSharedManager();
|
|
253
|
+
void manager.cancel(jobId(id));
|
|
254
|
+
}
|
|
255
|
+
else {
|
|
256
|
+
void this.tcp.send({ cmd: 'Cancel', id });
|
|
257
|
+
}
|
|
106
258
|
}
|
|
107
259
|
/** Get job counts by state */
|
|
108
260
|
getJobCounts() {
|
|
109
|
-
|
|
261
|
+
if (this.embedded) {
|
|
262
|
+
const stats = getSharedManager().getStats();
|
|
263
|
+
return {
|
|
264
|
+
waiting: stats.waiting,
|
|
265
|
+
active: stats.active,
|
|
266
|
+
completed: stats.completed,
|
|
267
|
+
failed: stats.dlq,
|
|
268
|
+
};
|
|
269
|
+
}
|
|
270
|
+
// TCP mode - sync call not ideal, return zeros
|
|
271
|
+
// For accurate counts, use getJobCountsAsync
|
|
272
|
+
return { waiting: 0, active: 0, completed: 0, failed: 0 };
|
|
273
|
+
}
|
|
274
|
+
/** Get job counts (async, works with TCP) */
|
|
275
|
+
async getJobCountsAsync() {
|
|
276
|
+
if (this.embedded) {
|
|
277
|
+
return this.getJobCounts();
|
|
278
|
+
}
|
|
279
|
+
const response = await this.tcp.send({ cmd: 'Stats' });
|
|
280
|
+
if (!response.ok) {
|
|
281
|
+
return { waiting: 0, active: 0, completed: 0, failed: 0 };
|
|
282
|
+
}
|
|
283
|
+
const stats = response.stats;
|
|
284
|
+
if (!stats) {
|
|
285
|
+
return { waiting: 0, active: 0, completed: 0, failed: 0 };
|
|
286
|
+
}
|
|
110
287
|
return {
|
|
111
|
-
waiting: stats.
|
|
112
|
-
active: stats.
|
|
113
|
-
completed: stats.completed,
|
|
114
|
-
failed: stats.dlq,
|
|
288
|
+
waiting: stats.queued ?? 0,
|
|
289
|
+
active: stats.processing ?? 0,
|
|
290
|
+
completed: stats.completed ?? 0,
|
|
291
|
+
failed: stats.dlq ?? 0,
|
|
115
292
|
};
|
|
116
293
|
}
|
|
117
294
|
/** Pause the queue */
|
|
118
295
|
pause() {
|
|
119
|
-
|
|
296
|
+
if (this.embedded) {
|
|
297
|
+
getSharedManager().pause(this.name);
|
|
298
|
+
}
|
|
299
|
+
else {
|
|
300
|
+
void this.tcp.send({ cmd: 'Pause', queue: this.name });
|
|
301
|
+
}
|
|
120
302
|
}
|
|
121
303
|
/** Resume the queue */
|
|
122
304
|
resume() {
|
|
123
|
-
|
|
305
|
+
if (this.embedded) {
|
|
306
|
+
getSharedManager().resume(this.name);
|
|
307
|
+
}
|
|
308
|
+
else {
|
|
309
|
+
void this.tcp.send({ cmd: 'Resume', queue: this.name });
|
|
310
|
+
}
|
|
124
311
|
}
|
|
125
312
|
/** Remove all waiting jobs */
|
|
126
313
|
drain() {
|
|
127
|
-
|
|
314
|
+
if (this.embedded) {
|
|
315
|
+
getSharedManager().drain(this.name);
|
|
316
|
+
}
|
|
317
|
+
else {
|
|
318
|
+
void this.tcp.send({ cmd: 'Drain', queue: this.name });
|
|
319
|
+
}
|
|
128
320
|
}
|
|
129
321
|
/** Remove all queue data (waiting, active, completed, failed) */
|
|
130
322
|
obliterate() {
|
|
131
|
-
|
|
323
|
+
if (this.embedded) {
|
|
324
|
+
getSharedManager().obliterate(this.name);
|
|
325
|
+
}
|
|
326
|
+
else {
|
|
327
|
+
void this.tcp.send({ cmd: 'Obliterate', queue: this.name });
|
|
328
|
+
}
|
|
132
329
|
}
|
|
133
|
-
// ============ Stall Detection ============
|
|
330
|
+
// ============ Stall Detection (embedded only for now) ============
|
|
134
331
|
/** Configure stall detection for this queue */
|
|
135
332
|
setStallConfig(config) {
|
|
333
|
+
if (!this.embedded) {
|
|
334
|
+
console.warn('setStallConfig is only supported in embedded mode');
|
|
335
|
+
return;
|
|
336
|
+
}
|
|
136
337
|
const manager = getSharedManager();
|
|
137
338
|
const shard = getShard(manager, this.name);
|
|
138
339
|
shard.setStallConfig(this.name, config);
|
|
139
340
|
}
|
|
140
341
|
/** Get stall detection configuration */
|
|
141
342
|
getStallConfig() {
|
|
343
|
+
if (!this.embedded) {
|
|
344
|
+
console.warn('getStallConfig is only supported in embedded mode');
|
|
345
|
+
return { enabled: true, stallInterval: 30000, maxStalls: 3, gracePeriod: 5000 };
|
|
346
|
+
}
|
|
142
347
|
const manager = getSharedManager();
|
|
143
348
|
const shard = getShard(manager, this.name);
|
|
144
349
|
return shard.getStallConfig(this.name);
|
|
145
350
|
}
|
|
146
351
|
// ============ DLQ Operations ============
|
|
147
|
-
/** Configure DLQ for this queue */
|
|
352
|
+
/** Configure DLQ for this queue (embedded only) */
|
|
148
353
|
setDlqConfig(config) {
|
|
354
|
+
if (!this.embedded) {
|
|
355
|
+
console.warn('setDlqConfig is only supported in embedded mode');
|
|
356
|
+
return;
|
|
357
|
+
}
|
|
149
358
|
const manager = getSharedManager();
|
|
150
359
|
const ctx = getDlqContext(manager);
|
|
151
360
|
dlqOps.configureDlq(this.name, ctx, config);
|
|
152
361
|
}
|
|
153
|
-
/** Get DLQ configuration */
|
|
362
|
+
/** Get DLQ configuration (embedded only) */
|
|
154
363
|
getDlqConfig() {
|
|
364
|
+
if (!this.embedded) {
|
|
365
|
+
console.warn('getDlqConfig is only supported in embedded mode');
|
|
366
|
+
return {};
|
|
367
|
+
}
|
|
155
368
|
const manager = getSharedManager();
|
|
156
369
|
const ctx = getDlqContext(manager);
|
|
157
370
|
return dlqOps.getDlqConfig(this.name, ctx);
|
|
158
371
|
}
|
|
159
372
|
/** Get DLQ entries with optional filter */
|
|
160
373
|
getDlq(filter) {
|
|
374
|
+
if (!this.embedded) {
|
|
375
|
+
console.warn('getDlq is only supported in embedded mode, use getDlqAsync for TCP');
|
|
376
|
+
return [];
|
|
377
|
+
}
|
|
161
378
|
const manager = getSharedManager();
|
|
162
379
|
const ctx = getDlqContext(manager);
|
|
163
380
|
const entries = dlqOps.getDlqEntries(this.name, ctx, toDomainFilter(filter));
|
|
164
381
|
return entries.map((entry) => toDlqEntry(entry));
|
|
165
382
|
}
|
|
166
|
-
/** Get DLQ statistics */
|
|
383
|
+
/** Get DLQ statistics (embedded only) */
|
|
167
384
|
getDlqStats() {
|
|
385
|
+
if (!this.embedded) {
|
|
386
|
+
console.warn('getDlqStats is only supported in embedded mode');
|
|
387
|
+
return {
|
|
388
|
+
total: 0,
|
|
389
|
+
byReason: {},
|
|
390
|
+
pendingRetry: 0,
|
|
391
|
+
expired: 0,
|
|
392
|
+
oldestEntry: null,
|
|
393
|
+
newestEntry: null,
|
|
394
|
+
};
|
|
395
|
+
}
|
|
168
396
|
const manager = getSharedManager();
|
|
169
397
|
const ctx = getDlqContext(manager);
|
|
170
398
|
const stats = dlqOps.getDlqStats(this.name, ctx);
|
|
@@ -179,11 +407,19 @@ export class Queue {
|
|
|
179
407
|
}
|
|
180
408
|
/** Retry jobs from DLQ */
|
|
181
409
|
retryDlq(id) {
|
|
182
|
-
|
|
183
|
-
|
|
410
|
+
if (this.embedded) {
|
|
411
|
+
const manager = getSharedManager();
|
|
412
|
+
return manager.retryDlq(this.name, id ? jobId(id) : undefined);
|
|
413
|
+
}
|
|
414
|
+
void this.tcp.send({ cmd: 'RetryDlq', queue: this.name, id });
|
|
415
|
+
return 0; // TCP doesn't return count synchronously
|
|
184
416
|
}
|
|
185
|
-
/** Retry DLQ jobs by filter */
|
|
417
|
+
/** Retry DLQ jobs by filter (embedded only) */
|
|
186
418
|
retryDlqByFilter(filter) {
|
|
419
|
+
if (!this.embedded) {
|
|
420
|
+
console.warn('retryDlqByFilter is only supported in embedded mode');
|
|
421
|
+
return 0;
|
|
422
|
+
}
|
|
187
423
|
const manager = getSharedManager();
|
|
188
424
|
const ctx = getDlqContext(manager);
|
|
189
425
|
const domainFilter = toDomainFilter(filter);
|
|
@@ -193,11 +429,19 @@ export class Queue {
|
|
|
193
429
|
}
|
|
194
430
|
/** Purge all jobs from DLQ */
|
|
195
431
|
purgeDlq() {
|
|
196
|
-
|
|
432
|
+
if (this.embedded) {
|
|
433
|
+
return getSharedManager().purgeDlq(this.name);
|
|
434
|
+
}
|
|
435
|
+
void this.tcp.send({ cmd: 'PurgeDlq', queue: this.name });
|
|
436
|
+
return 0;
|
|
197
437
|
}
|
|
198
438
|
/** Close the queue */
|
|
199
|
-
|
|
200
|
-
//
|
|
439
|
+
close() {
|
|
440
|
+
// Close pool if using pooled connections (not shared)
|
|
441
|
+
if (this.tcpPool) {
|
|
442
|
+
this.tcpPool.close();
|
|
443
|
+
}
|
|
444
|
+
// Shared client is managed globally, don't close
|
|
201
445
|
}
|
|
202
446
|
}
|
|
203
447
|
//# sourceMappingURL=queue.js.map
|
package/dist/client/queue.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"queue.js","sourceRoot":"","sources":["../../src/client/queue.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"queue.js","sourceRoot":"","sources":["../../src/client/queue.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* TCP Client for SDK - Production Ready
|
|
3
|
+
* Connects to bunqueue server via TCP with auto-reconnection
|
|
4
|
+
*/
|
|
5
|
+
import { EventEmitter } from 'events';
|
|
6
|
+
/** Connection options */
|
|
7
|
+
export interface ConnectionOptions {
|
|
8
|
+
host: string;
|
|
9
|
+
port: number;
|
|
10
|
+
token?: string;
|
|
11
|
+
/** Max reconnection attempts (default: Infinity) */
|
|
12
|
+
maxReconnectAttempts?: number;
|
|
13
|
+
/** Initial reconnect delay in ms (default: 100) */
|
|
14
|
+
reconnectDelay?: number;
|
|
15
|
+
/** Max reconnect delay in ms (default: 30000) */
|
|
16
|
+
maxReconnectDelay?: number;
|
|
17
|
+
/** Connection timeout in ms (default: 5000) */
|
|
18
|
+
connectTimeout?: number;
|
|
19
|
+
/** Command timeout in ms (default: 30000) */
|
|
20
|
+
commandTimeout?: number;
|
|
21
|
+
/** Enable auto-reconnect (default: true) */
|
|
22
|
+
autoReconnect?: boolean;
|
|
23
|
+
/** Health check ping interval in ms (default: 30000, 0 to disable) */
|
|
24
|
+
pingInterval?: number;
|
|
25
|
+
}
|
|
26
|
+
/** Default connection */
|
|
27
|
+
export declare const DEFAULT_CONNECTION: Required<ConnectionOptions>;
|
|
28
|
+
/**
|
|
29
|
+
* TCP Client - manages connection to bunqueue server
|
|
30
|
+
* Production-ready with auto-reconnection and exponential backoff
|
|
31
|
+
*/
|
|
32
|
+
export declare class TcpClient extends EventEmitter {
|
|
33
|
+
private socket;
|
|
34
|
+
private connected;
|
|
35
|
+
private connecting;
|
|
36
|
+
private closed;
|
|
37
|
+
private reconnectAttempts;
|
|
38
|
+
private reconnectTimer;
|
|
39
|
+
private pingTimer;
|
|
40
|
+
private readonly options;
|
|
41
|
+
private pendingCommands;
|
|
42
|
+
private currentCommand;
|
|
43
|
+
constructor(options?: Partial<ConnectionOptions>);
|
|
44
|
+
/** Connect to server */
|
|
45
|
+
connect(): Promise<void>;
|
|
46
|
+
private doConnect;
|
|
47
|
+
/** Start periodic health check ping */
|
|
48
|
+
private startPing;
|
|
49
|
+
/** Stop health check ping */
|
|
50
|
+
private stopPing;
|
|
51
|
+
/** Send ping to check connection health */
|
|
52
|
+
ping(): Promise<boolean>;
|
|
53
|
+
/** Schedule reconnection with exponential backoff */
|
|
54
|
+
private scheduleReconnect;
|
|
55
|
+
/** Internal send without auto-connect */
|
|
56
|
+
private sendInternal;
|
|
57
|
+
/** Process next pending command */
|
|
58
|
+
private processNextCommand;
|
|
59
|
+
/** Send command and wait for response */
|
|
60
|
+
send(command: Record<string, unknown>): Promise<Record<string, unknown>>;
|
|
61
|
+
/** Close connection */
|
|
62
|
+
close(): void;
|
|
63
|
+
/** Check if connected */
|
|
64
|
+
isConnected(): boolean;
|
|
65
|
+
/** Get connection state */
|
|
66
|
+
getState(): 'connected' | 'connecting' | 'disconnected' | 'closed';
|
|
67
|
+
}
|
|
68
|
+
/** Get shared TCP client */
|
|
69
|
+
export declare function getSharedTcpClient(options?: Partial<ConnectionOptions>): TcpClient;
|
|
70
|
+
/** Close shared client */
|
|
71
|
+
export declare function closeSharedTcpClient(): void;
|
|
72
|
+
//# sourceMappingURL=tcpClient.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tcpClient.d.ts","sourceRoot":"","sources":["../../src/client/tcpClient.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAEtC,yBAAyB;AACzB,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,oDAAoD;IACpD,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,mDAAmD;IACnD,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,iDAAiD;IACjD,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,+CAA+C;IAC/C,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,6CAA6C;IAC7C,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,4CAA4C;IAC5C,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,sEAAsE;IACtE,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,yBAAyB;AACzB,eAAO,MAAM,kBAAkB,EAAE,QAAQ,CAAC,iBAAiB,CAW1D,CAAC;AAiBF;;;GAGG;AACH,qBAAa,SAAU,SAAQ,YAAY;IACzC,OAAO,CAAC,MAAM,CAA8B;IAC5C,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,iBAAiB,CAAK;IAC9B,OAAO,CAAC,cAAc,CAA8C;IACpE,OAAO,CAAC,SAAS,CAA+C;IAChE,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA8B;IACtD,OAAO,CAAC,eAAe,CAAwB;IAC/C,OAAO,CAAC,cAAc,CAA+B;gBAEzC,OAAO,GAAE,OAAO,CAAC,iBAAiB,CAAM;IAKpD,wBAAwB;IAClB,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;YAuChB,SAAS;IAyIvB,uCAAuC;IACvC,OAAO,CAAC,SAAS;IAQjB,6BAA6B;IAC7B,OAAO,CAAC,QAAQ;IAOhB,2CAA2C;IACrC,IAAI,IAAI,OAAO,CAAC,OAAO,CAAC;IAU9B,qDAAqD;IACrD,OAAO,CAAC,iBAAiB;IAuCzB,yCAAyC;YAC3B,YAAY;IAqB1B,mCAAmC;IACnC,OAAO,CAAC,kBAAkB;IAW1B,yCAAyC;IACnC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IA6B9E,uBAAuB;IACvB,KAAK,IAAI,IAAI;IA6Bb,yBAAyB;IACzB,WAAW,IAAI,OAAO;IAItB,2BAA2B;IAC3B,QAAQ,IAAI,WAAW,GAAG,YAAY,GAAG,cAAc,GAAG,QAAQ;CAMnE;AAKD,4BAA4B;AAC5B,wBAAgB,kBAAkB,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC,iBAAiB,CAAC,GAAG,SAAS,CAGlF;AAED,0BAA0B;AAC1B,wBAAgB,oBAAoB,IAAI,IAAI,CAK3C"}
|