Dionera / laravel-beanstalkd-admin-ui

An Admin UI for Beanstalkd and Laravel

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Possibly work with other queue drivers?

ejunker opened this issue · comments

This project looks awesome!

I know it is intended to only work with beanstalkd but I was wondering how hard it would be to also support other queue drivers such as Redis? It would be great if it could support all the queue drivers that Laravel has.

Hi @ejunker. Thanks for showing interest in this project!

The main issue I see with generalizing this package to work with all queue drivers is that the views are very specific to Beanstalkd. Most of the terminology used in the overview comes from the Beanstalkd spec, such as "buried", "reserved" and "ready". These terms might either not exist for other queue drivers or may have another meaning. That means, you'd have to have different views for all the different drivers that you want to support. While certainly doable, it is quite a bit of work.

I would suggest against changing this repo to make it more general (since the name is already very specific and changing the repository name is probably not a good idea). This would be a good idea for a fork, however.

From the top of my head, these would be the things one would have to adjust:

It should be fairly easy to generalize the code in the same way that Laravel does, i.e. having different Drivers for the different queues. You could then maybe read the QUEUE_DRIVER setting from the .env file and register a different admin driver based off that. These drivers could then render their specific views.