{"repo":"mosquito-cr/mosquito","free":true,"listed":false,"github":"https://github.com/mosquito-cr/mosquito","clone":"git clone https://github.com/mosquito-cr/mosquito.git","description":"A background task runner for crystal applications supporting periodic (CRON) and manually queued jobs","language":"Crystal","stars":245,"topics":["crystal","background-jobs","fast","redis"],"license":"MIT","category":"databases-storage","readme_excerpt":"Mosquito is a generic background job runner written primarily for Crystal. Significant inspiration from experience with the successes and failings many Ruby gems in this vein. Once compiled, a mosquito binary can start work in about 10 milliseconds. Mosquito currently provides these features: - Delayed execution ( SendEmailJob.new(email: :welcome, address: user.email).enqueue(in: 3.minutes) ) - Scheduled / Periodic execution ( RunEveryHourJob.new ) - Job Storage in Redis - Automatic rescheduling of failed jobs - Progressively increasing delay of rescheduled failed jobs - Dead letter queue of jobs which have failed too many times - Rate limited jobs Current Limitations: - Visibility into a running job network and queue is limited. There is a working proof of concept visualization API and bare-bones terminal application. Project State The Mosquito project is stable. A few folks are using Mosquito in production, and it's going well. There are some features which would be nice to have, but what is here is both tried and tested. If you're using Mosquito, please get in touch on the Discussion board or on Crystal chat with any questions, feature suggestions, or feedback. Installation Update your shard.yml to include mosquito: Usage Step 1: Define a queued job Step 2: Trigger that job Step 3: Run your worker to process the job Success More information about queued jobs in the manual. ------ Periodic Jobs Periodic jobs run according to a predefined period -- once an hour, etc. This pe","default_branch":null,"files":null,"tree":[],"storefront":"/r/mosquito-cr","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/mosquito-cr/mosquito/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}