To enable asynchronous workflows, add a column named async to the def_workflow table. Set the value of this column to 'Y' for workflows you want to run asynchronously.
Configure the RabbitMQ server and add its details to your YAML file. The configuration should resemble the following:
rabbitmq:
username: user
password: pass
ip: 127.0.0.1
port: 5672
Use the following URL structure to access the RabbitMQ server:
http://<server_ip>:15672/#
In MongoDB Compass, navigate to your server and view the workflow_queue_context collection for status updates.
Initial Entry:
status field is set to pending.Queueing Workflows:
ServeWebhook.py without parameters to move pending workflows into the RabbitMQ queue. The status in the MongoDB database will update to mq.Worker Processes:
python ServeWorkflow.py worker <worker_id>
<worker_id> with a unique identifier to track the worker.Completion:
complete. The result array in the MongoDB database will contain the workflow's results.Immediate Response:
Test Results: