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 Dapr pub/sub #410

Open
fgheysels opened this issue Jul 18, 2023 · 3 comments
Open

Support Dapr pub/sub #410

fgheysels opened this issue Jul 18, 2023 · 3 comments
Labels
dependencies Pull requests that update a dependency file feature All issues related to new features message-pumps All issues related to message pumps specs-required All issues where the specifications are still being defined and implementation should be halted
Milestone

Comments

@fgheysels
Copy link
Member

In Arcus.Messaging, I like the concept of the message routers and I'm wondering if we could add support for Dapr Pub/Sub components in Arcus.Messaging.
This would allow us to use the Dapr pub/sub component to connect with a messaging system (be it Azure ServiceBus, an MQTT topic, .... ) and combine this with the message routing functionality that Arcus offers.

@stijnmoreels
Copy link
Member

stijnmoreels commented Jul 19, 2023

So a message pump that takes in messages from a Dapr subscription? Yes, that is similar to what we already have. How can we test this? Is this something we can run as a service during tests or is this available as an Azure resource?

If this Dapr pub/sub is already available as an Azure Functions trigger, you could already create a message router yourself that does the translation before we fully support this.

@stijnmoreels stijnmoreels added this to the v1.5.0 milestone Jul 19, 2023
@stijnmoreels stijnmoreels added feature All issues related to new features specs-required All issues where the specifications are still being defined and implementation should be halted dependencies Pull requests that update a dependency file message-pumps All issues related to message pumps labels Jul 19, 2023
@fgheysels
Copy link
Member Author

Dapr is mostly used in a Kubernetes environment.
So, suppose you have a worker that consumes messages from a servicebus, you could use Dapr Pub/Sub to read the messages from ServiceBus.
Dapr will inject a sidecar into your pod which is responsible for doing the communication with -in this case- servicebus, and sends the messages to your program. So in fact, Dapr offers an abstraction over the messaging technology that you're using.

I think it is a good idea to discuss this offline ?

@stijnmoreels
Copy link
Member

stijnmoreels commented Jul 19, 2023

Ah, okay, so an extra layer, indeed. If you feel like there are some more context you should give me, yes, let's take this offline.

If it uses the sidecar, I think we can re-use the functionality we've previously written for the Arcus Dapr secret provider.

@stijnmoreels stijnmoreels modified the milestones: v1.5.0, v2.1.0 Dec 15, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
dependencies Pull requests that update a dependency file feature All issues related to new features message-pumps All issues related to message pumps specs-required All issues where the specifications are still being defined and implementation should be halted
Projects
None yet
Development

No branches or pull requests

2 participants