-
Notifications
You must be signed in to change notification settings - Fork 139
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Delayed message queue?! #46
Comments
BlazingMQ supports temporal isolation of producers and consumers in its major modes (priority and fanout). It buffers messages until they can be delivered. You can specify byte and message quotas, and time to live. There are no artificial limits on those values. Given sufficient disk space, BMQ will happily store millions of messages for years. |
To clarify the use case here, are you asking for the ability to specify on the message when you push it to the queue a point in time which it should not be delivered to a consumer before? Or just that you want to push messages into the queue with no consumers, and only add consumers at some point in the distance future? |
@willhoy: |
Regarding this (first) scenario, something similar might be simulated with subscriptions:
This solution has some downsides:
|
With subscriptions, our goal was to save as much time on evaluation as possible, to achieve high throughput, so we have some limitations to allow algo optimizations:
Adding some variable parts to subscription expressions (other than message property names) might require some non-trivial work. On the other hand, there is an interesting idea about triggers - similar to expressions, but living in the message @quarter-note : Trigger is an expression which can be checked periodically or on some events, for example, when some variable changes. Need to know possible usage scenarios, not able to think of some variable other than time. |
I would not use subscriptions for this. Sounds very hacky. Idea of triggers is interesting, but we need to think about its utility. What are some of the problems that we are looking to solve with triggers? |
Is there an existing proposal for this?
Is your feature request related to a problem?
Problem is for very long delayed queue.
Describe the solution you'd like
Delayed message queue that can hold millions of messages for long enough (e.g. 365 days), and persistent is required.
Alternatives you considered
With rabbitmq and delayed message queue plugin it's possible to achieve that partly, mostly because of limitations in mnesia.
The text was updated successfully, but these errors were encountered: