Microservice communication using pubsub (async)
In this quickstart, you'll create a publisher microservice and a subscriber microservice to demonstrate how Dapr enables a publish-subcribe pattern. The publisher will generate messages of a specific topic, while subscribers will listen for messages of specific topics. See Why Pub-Sub to understand when this pattern might be a good choice for your software architecture.
For more details about this quickstart example please see the Pub-Sub Quickstart documentation.
Visit this link for more information about Dapr and Pub-Sub.
Note: This example leverages the Dapr client SDK. If you are looking for the example using only HTTP
requests
click here.
This quickstart includes one publisher:
- Node client message generator
checkout
And one subscriber:
- Node subscriber
order-processor
Pre-requisites
For this example, you will need:
Run Node message subscriber with Dapr
- Install dependencies in a new terminal:
cd ./order-processor
npm install
- Run the Node subscriber app with Dapr:
dapr run --app-port 5001 --app-id order-processing --app-protocol http --dapr-http-port 3501 --components-path ../components -- npm run start
Run Node message publisher with Dapr
- Install dependencies in a new terminal:
cd ./checkout
npm install
- Run the Node publisher app with Dapr:
dapr run --app-id checkout --app-protocol http --components-path ../components -- npm run start
dapr stop --app-id checkout
dapr stop --app-id order-processor
- Deploy to Azure for dev-test
NOTE: make sure you have Azure Dev CLI pre-reqs here
azd up