-
Notifications
You must be signed in to change notification settings - Fork 47
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
Implement : Delay-Queue, Message-TTL, Queue-TTL, Dead-Letter-Queue, Multi-Tenant in AoP(Implementation based on PR#748) #851
Closed
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add a new proxy to use multi bundles feature. - support exchange declare - support queue declare - support queue bind - support queue unbind - support basic publish - support basic consume
2.Messages are rejected back on the queue and should be delivered immediately, consistent with rabbitmq.
2.Supports message-level and queue-level ttl. 3.Support Multi-tenant.
GhostBoyBoy
changed the title
Implement message TTL, Queue TTL, dead letter queue in AoP(Implementation based on PR#748)
Implement : Delay-queue, Message TTL, Queue TTL, Dead-Letter Queue in AoP(Implementation based on PR#748)
Mar 15, 2023
GhostBoyBoy
changed the title
Implement : Delay-queue, Message TTL, Queue TTL, Dead-Letter Queue in AoP(Implementation based on PR#748)
Implement : Delay-Queue, Message-TTL, Queue-TTL, Dead-Letter-Queue, Multi-Tenant in AoP(Implementation based on PR#748)
Mar 15, 2023
2.consumers use real ip addresses
2. Optimize the TTL logic from active training to listening
All queues are loaded by default. |
2. Adjust the admin server configuration 3. Fix queue and exchange not loading 4. Optimize the message query api
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Fixes #832
Motivation
1.Support dead letter queue.
2.Supports message-level and queue-level ttl.
3.Support multi-tenant, client virtual-host use tenant/virtual-host, this function can migrate multiple rabbitmq clusters to aop, you only need to set different tenant.
4.Rabbitmq delay queue is supported.
Modifications
1.Create a subscription for each queue (initialized when the queue is created).
2.Getting the subscription in the PersistentQueue starts a task loop to detect message expiration.
3.Passing the parameters of the queue to the PersistentQueue
4.When the consumer calls basic.reject or nack with requeue=false, the dead-letter queue or ack message is routed.
Verifying this change
(Please pick either of the following options)
This change is a trivial rework / code cleanup without any test coverage.
(or)
This change is already covered by existing tests, such as (please describe tests).
(or)
This change added tests and can be verified as follows:
(example:)
Does this pull request potentially affect one of the following parts:
If
yes
was chosen, please highlight the changesDocumentation
Check the box below.
Need to update docs?
doc-required
(If you need help on updating docs, create a doc issue)
no-need-doc
(Please explain why)
doc
(If this PR contains doc changes)