atomic-queues 1.0.15 → 1.0.16
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/README.md +9 -9
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
#
|
|
1
|
+
# atomic-queues
|
|
2
2
|
|
|
3
3
|
A plug-and-play NestJS library for atomic process handling per entity with BullMQ, Redis distributed locking, and dynamic worker management.
|
|
4
4
|
|
|
5
5
|
## Overview
|
|
6
6
|
|
|
7
|
-
|
|
7
|
+
`atomic-queues` provides a unified architecture for handling atomic, sequential processing of jobs on a per-entity basis. It abstracts the complexity of managing dynamic queues, workers, and distributed locking into a simple, declarative API.
|
|
8
8
|
|
|
9
9
|
### Problem It Solves
|
|
10
10
|
|
|
@@ -39,7 +39,7 @@ Customer B places Order 3 → [validate] → [pay] → [reserve] → [ship]
|
|
|
39
39
|
|
|
40
40
|
```
|
|
41
41
|
┌─────────────────────────────────────────────────────────────────────────────────────────────┐
|
|
42
|
-
│
|
|
42
|
+
│ atomic-queues ARCHITECTURE │
|
|
43
43
|
└─────────────────────────────────────────────────────────────────────────────────────────────┘
|
|
44
44
|
|
|
45
45
|
┌─────────────────────┐
|
|
@@ -314,7 +314,7 @@ Customer B places Order 3 → [validate] → [pay] → [reserve] → [ship]
|
|
|
314
314
|
## Installation
|
|
315
315
|
|
|
316
316
|
```bash
|
|
317
|
-
npm install
|
|
317
|
+
npm install atomic-queues bullmq ioredis
|
|
318
318
|
```
|
|
319
319
|
|
|
320
320
|
---
|
|
@@ -325,7 +325,7 @@ npm install @nestjs/atomic-queues bullmq ioredis
|
|
|
325
325
|
|
|
326
326
|
```typescript
|
|
327
327
|
import { Module } from '@nestjs/common';
|
|
328
|
-
import { AtomicQueuesModule } from '
|
|
328
|
+
import { AtomicQueuesModule } from 'atomic-queues';
|
|
329
329
|
|
|
330
330
|
@Module({
|
|
331
331
|
imports: [
|
|
@@ -348,7 +348,7 @@ export class AppModule {}
|
|
|
348
348
|
```typescript
|
|
349
349
|
import { Module } from '@nestjs/common';
|
|
350
350
|
import { ConfigModule, ConfigService } from '@nestjs/config';
|
|
351
|
-
import { AtomicQueuesModule } from '
|
|
351
|
+
import { AtomicQueuesModule } from 'atomic-queues';
|
|
352
352
|
|
|
353
353
|
@Module({
|
|
354
354
|
imports: [
|
|
@@ -375,7 +375,7 @@ export class AppModule {}
|
|
|
375
375
|
|
|
376
376
|
```typescript
|
|
377
377
|
import { Injectable } from '@nestjs/common';
|
|
378
|
-
import { JobProcessor, JobProcessorRegistry } from '
|
|
378
|
+
import { JobProcessor, JobProcessorRegistry } from 'atomic-queues';
|
|
379
379
|
import { CommandBus } from '@nestjs/cqrs';
|
|
380
380
|
|
|
381
381
|
@Injectable()
|
|
@@ -405,7 +405,7 @@ export class ProcessPaymentProcessor {
|
|
|
405
405
|
|
|
406
406
|
```typescript
|
|
407
407
|
import { Injectable } from '@nestjs/common';
|
|
408
|
-
import { QueueManagerService, IndexManagerService } from '
|
|
408
|
+
import { QueueManagerService, IndexManagerService } from 'atomic-queues';
|
|
409
409
|
|
|
410
410
|
@Injectable()
|
|
411
411
|
export class OrderService {
|
|
@@ -435,7 +435,7 @@ export class OrderService {
|
|
|
435
435
|
|
|
436
436
|
```typescript
|
|
437
437
|
import { Injectable } from '@nestjs/common';
|
|
438
|
-
import { WorkerManagerService, JobProcessorRegistry } from '
|
|
438
|
+
import { WorkerManagerService, JobProcessorRegistry } from 'atomic-queues';
|
|
439
439
|
|
|
440
440
|
@Injectable()
|
|
441
441
|
export class OrderWorkerService {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "atomic-queues",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.16",
|
|
4
4
|
"description": "A plug-and-play NestJS library for atomic process handling per entity with BullMQ, Redis distributed locking, and dynamic worker management",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|