Skip to content
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

Support Redis Pub/Sub as Message Broker #13

Open
JamieCressey opened this issue Aug 20, 2019 · 1 comment
Open

Support Redis Pub/Sub as Message Broker #13

JamieCressey opened this issue Aug 20, 2019 · 1 comment
Labels
help wanted Extra attention is needed

Comments

@JamieCressey
Copy link

Similar to Kafka and RabbitMQ. This is a feature request for first class support for using Redis Pub/Sub as a message broker in a Micronaut application

@graemerocher graemerocher added enhancement help wanted Extra attention is needed labels Oct 14, 2019
@cristian-com
Copy link

cristian-com commented Mar 19, 2022

Hi there!

I've just started to write some groundwork for this ticket. I'm trying to keep it as similar as possible to the Kafka and Rabbit projects.

Here the draft (very simple POC of publishing/consuming flow): #278

I'm basically targeting a something like:

@RedisListener
class MessageChannelListener {
    @MessageChannel("individual_channel")
    public void handle(@MessageBody byte[] message) { ... }
}
  • Listeners with multiple handler methods
  • Handler methods supporting multiple channels/patterns with the same message body type.
  • Basic wiring for custom subscribers lifecycle callbacks
  • A simple publisher
  • Json parsing ?
  • Executors ?
  • Connections configuration/management (both single/cluster and probably Redis events, but I'm not sure about the latter, at least for the first iteration).

I have only encountered one issue so far, and was using the Gradle plugin. I'm trying to mirror the way of including the messaging library (as it is in Kafka/Rabbit projects):

  // FIXME
  implementation 'io.micronaut:micronaut-messaging:3.3.4'
  **VS** 
  api mn.micronaut.messaging // mn is not found, I dont know if this is a plugin version kind of issue

It would be appreciated some help with that, so I don't use much time trying to figure out myself :v

Please advise me if the above makes sense, or if this ticket is even workable at all (I'm assuming so from the tag).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
help wanted Extra attention is needed
Projects
None yet
Development

No branches or pull requests

3 participants