geofmureithi / apalis

Simple, extensible multithreaded background job and message processing library for Rust
https://crates.io/crates/apalis
MIT License
421 stars 36 forks source link

New features #47

Closed AzHicham closed 1 year ago

AzHicham commented 1 year ago

Hello

First of all thanks for your amazing work !! Here are some features that could be really amazing

Few questions btw, does a worker run in a dedicated thread ? Is it possible to run multiple instance of worker app ?

geofmureithi commented 1 year ago

Hello So, some of the issues you have raised will be covered in version 0.4 (#12) specifically pipe-lining and shutting down. On priority handling, It is currently not a major priority, as one can achieve this by running multiple workers or other workarounds. On the issue of testing, there will be improvements in v0.4, but we may also add MockStorage.

On the other questions:

AzHicham commented 1 year ago

Hi

Thats really cool for pipe-lining, shutting down and mocking !! For priority I understand there is plenty of ways to do it, with multiple worker for instance !

May be one last question, right now in my kubernetes deployement I scale workers according to the number of message in my celery/redis queue. For apalis/redis do you know the name queue I need to watch ?

EDIT: And maybe I found a bug: I started a worker then restarted Redis, The worker app was not able to receive job anymore :/

Thanks a lot !!

AzHicham commented 1 year ago

Hello @geofmureithi Idk if you saw my last edit about a potential bug when Redis restart while worker is already connected :)

geofmureithi commented 1 year ago

Hey, can you create an issue with the steps to replicate this?

geofmureithi commented 1 year ago

Hey @AzHicham Does #54 Fix your issues?

AzHicham commented 1 year ago

Sorry for the late reply I'll try this asap :)