1- import { initializeDatabase , run } from './database.js' ;
1+ import { initializeDatabase } from './database.js' ;
22import { emailQueue } from './email-queue.js' ;
33import { generalQueue } from './general-queue.js' ;
44import { parseArgs } from 'util' ;
@@ -37,53 +37,20 @@ async function push() {
3737 } ) ;
3838 console . log ( `Image job added with ID: ${ imageJobId } ` ) ;
3939
40- const reportJobId = await generalQueue . addJob ( 'generate-report' , {
40+ await generalQueue . addJob ( 'generate-report' , {
4141 payload : {
4242 type : 'sales' ,
4343 period : 'Q4-2023'
4444 } ,
4545 delay : 2
4646 } ) ;
47- console . log ( `Delayed report job added with ID: ${ reportJobId } ` ) ;
48-
49- // Add event listeners for both queues
50- generalQueue . on ( 'beforeExec' , ( event ) => {
51- console . log ( `\n[generalQueue][${ new Date ( ) . toISOString ( ) } ] Starting ${ event . name } job ${ event . id } ...` ) ;
52- } ) ;
53-
54- generalQueue . on ( 'afterExec' , ( event ) => {
55- console . log ( `[generalQueue][${ new Date ( ) . toISOString ( ) } ] Job ${ event . id } (${ event . name } ) completed successfully` ) ;
56- } ) ;
57-
58- generalQueue . on ( 'afterError' , ( event ) => {
59- console . error ( `[generalQueue][${ new Date ( ) . toISOString ( ) } ] Job ${ event . id } (${ event . name } ) failed:` , event . error ) ;
60- } ) ;
61-
62- emailQueue . on ( 'beforeExec' , ( event ) => {
63- console . log ( `\n[emailQueue][${ new Date ( ) . toISOString ( ) } ] Starting ${ event . name } job ${ event . id } ...` ) ;
64- } ) ;
65-
66- emailQueue . on ( 'afterExec' , ( event ) => {
67- console . log ( `[emailQueue][${ new Date ( ) . toISOString ( ) } ] Email job ${ event . id } (${ event . name } ) completed successfully` ) ;
68- } ) ;
69-
70- emailQueue . on ( 'afterError' , ( event ) => {
71- console . error ( `[emailQueue][${ new Date ( ) . toISOString ( ) } ] Email job ${ event . id } (${ event . name } ) failed:` , event . error ) ;
72- } ) ;
73-
74- console . log ( '\nStarting workers...' ) ;
75-
76- process . on ( 'SIGINT' , ( ) => {
77- console . log ( '\nShutting down gracefully...' ) ;
78- process . exit ( 0 ) ;
79- } ) ;
8047}
8148
8249async function run ( ) {
8350 console . log ( 'Starting queue workers...' ) ;
8451 await Promise . allSettled ( [
85- emailQueue . run ( true ) ,
86- generalQueue . run ( true )
52+ emailQueue . run ( true , 1 ) ,
53+ generalQueue . run ( true , 1 ) ,
8754 ] )
8855 console . log ( 'Queue workers are running. Press Ctrl+C to exit.' ) ;
8956}
@@ -105,7 +72,7 @@ if (import.meta.url === `file://${process.argv[1]}`) {
10572 console . log ( ' --run Run the queue workers (default: false)' ) ;
10673 process . exit ( 0 ) ;
10774 }
108-
75+
10976 if ( args . values . push ) {
11077 await push ( ) ;
11178 } else if ( args . values . run ) {
0 commit comments