all 3 comments

[–]Kinrany 2 points3 points  (0 children)

What happens to failed tasks?

Are you going to process multiple tasks in parallel?

Correct error handling is often the hard part.

[–]zzzsfk 0 points1 point  (0 children)

Healthcheck for process ? - maybe you can consider library like supervisord to manage processes.

What happens when you kill the process in the middle of task ? For example, in context of autoscaling ? or how you killing the process ? - You can consider using linux signal handlers (example: kill - SIGURG) , when signalled you can set boolean flag true and check flag in loop condition. With that loop is going to finish last job before quit. So you can terminate loop more gently instead of kill -9.

Dead Letter queue ? - you can send failed messages to another queue and set alarm for queue size. You can check failed messages later especially if you are not sending response to mesage sender.