Pulsar
Detailed documentation on the Pulsar pubsub component
Component format
To setup Pulsar pubsub create a component of type pubsub.pulsar
. See this guide on how to create and apply a pubsub configuration.
apiVersion: dapr.io/v1alpha1
kind: Component
metadata:
name: pulsar-pubsub
namespace: default
spec:
type: pubsub.pulsar
version: v1
metadata:
- name: host
value: "localhost:6650"
- name: enableTLS
value: "false"
Spec metadata fields
Field | Required | Details | Example |
---|---|---|---|
host | Y | Address of the Pulsar broker. Default is “localhost:6650” | “localhost:6650” |
enableTLS | N | Enable TLS. Default: “false” | “true” , “false” |
Delay queue
When invoking the Pulsar pub/sub, it’s possible to provide an optional delay queue by using the metadata
query parameters in the request url.
These optional parameter names are metadata.deliverAt
or metadata.deliverAfter
:
deliverAt
: Delay message to deliver at a specified time (RFC3339 format), e.g."2021-09-01T10:00:00Z"
deliverAfter
: Delay message to deliver after a specified amount of time, e.g."4h5m3s"
Examples:
curl -X POST http://localhost:3500/v1.0/publish/myPulsar/myTopic?metadata.deliverAt='2021-09-01T10:00:00Z' \
-H "Content-Type: application/json" \
-d '{
"data": {
"message": "Hi"
}
}'
Or
curl -X POST http://localhost:3500/v1.0/publish/myPulsar/myTopic?metadata.deliverAfter='4h5m3s' \
-H "Content-Type: application/json" \
-d '{
"data": {
"message": "Hi"
}
}'
Create a Pulsar instance
docker run -it \
-p 6650:6650 \
-p 8080:8080 \
--mount source=pulsardata,target=/pulsar/data \
--mount source=pulsarconf,target=/pulsar/conf \
apachepulsar/pulsar:2.5.1 \
bin/pulsar standalone
Refer to the following Helm chart Documentation.
Related links
- Basic schema for a Dapr component
- Read this guide for instructions on configuring pub/sub components
- Pub/Sub building block
Last modified November 12, 2021 : Merge pull request #1949 from willtsai/az-staticwebapp-versioning (c40e456)