161 lines
5.8 KiB
YAML
161 lines
5.8 KiB
YAML
# yaml-language-server: $schema=../../component-metadata-schema.json
|
|
schemaVersion: v1
|
|
type: pubsub
|
|
name: redis
|
|
version: v1
|
|
status: stable
|
|
title: "Redis"
|
|
urls:
|
|
- title: Reference
|
|
url: https://docs.dapr.io/reference/components-reference/supported-pubsub/setup-redis-pubsub/
|
|
capabilities:
|
|
- ttl
|
|
metadata:
|
|
- name: redisHost
|
|
required: true
|
|
description: |
|
|
Connection-string for the redis host. If "redisType" is "cluster" it can be multiple hosts separated by commas or just a single host
|
|
example: '"redis-master.default.svc.cluster.local:6379"'
|
|
type: string
|
|
- name: redisPassword
|
|
required: true
|
|
sensitive: true
|
|
description: |
|
|
Password for Redis host. No Default. Can be "secretKeyRef" to use a secret reference
|
|
example: '"KeFg23!"'
|
|
type: string
|
|
- name: redisUsername
|
|
required: false
|
|
description: Username for Redis host. Defaults to empty. Make sure your redis server version is 6 or above, and have created acl rule correctly.
|
|
example: "default"
|
|
type: string
|
|
- name: consumerID
|
|
required: false
|
|
description: The consumer group ID
|
|
example: "myGroup"
|
|
type: string
|
|
- name: enableTLS
|
|
required: false
|
|
description: |
|
|
If the Redis instance supports TLS with public certificates, can be configured to be enabled or disabled. Defaults to "false".
|
|
example: "false"
|
|
type: bool
|
|
- name: redeliverInterval
|
|
required: false
|
|
description: |
|
|
The interval between checking for pending messages to redelivery. Defaults to "60s". "0" disables redelivery.
|
|
example: "30s"
|
|
type: duration
|
|
- name: processingTimeout
|
|
required: false
|
|
description: |
|
|
The amount time a message must be pending before attempting to redeliver it. Defaults to "15s". "0" disables redelivery.
|
|
example: "30s"
|
|
type: duration
|
|
- name: queueDepth
|
|
required: false
|
|
description: |
|
|
The size of the message queue for processing. Defaults to "100".
|
|
example: "1000"
|
|
type: number
|
|
- name: concurrency
|
|
required: false
|
|
description: |
|
|
The number of concurrent workers that are processing messages. Defaults to "10".
|
|
example: "15"
|
|
type: number
|
|
- name: redisType
|
|
required: false
|
|
description: |
|
|
The type of redis. There are two valid values, one is "node" for single node mode, the other is "cluster" for redis cluster mode. Defaults to "node".
|
|
example: "cluster"
|
|
type: string
|
|
- name: redisDB
|
|
required: false
|
|
description: |
|
|
Database selected after connecting to redis. If "redisType" is "cluster" this option is ignored. Defaults to "0".
|
|
example: "0"
|
|
type: number
|
|
- name: redisMaxRetries
|
|
required: false
|
|
description: Maximum number of times to retry commands before giving up. Default is to not retry failed commands.
|
|
example: "5"
|
|
type: number
|
|
- name: redisMinRetryInterval
|
|
required: false
|
|
description: |
|
|
Minimum backoff for redis commands between each retry. Default is "8ms"; "-1" disables backoff.
|
|
example: "8ms"
|
|
type: duration
|
|
- name: redisMaxRetryInterval
|
|
required: false
|
|
description: |
|
|
Maximum backoff for redis commands between each retry. Default is "512ms";"-1" disables backoff.
|
|
example: "5s"
|
|
type: duration
|
|
- name: dialTimeout
|
|
required: false
|
|
description: |
|
|
Dial timeout for establishing new connections. Defaults to "5s".
|
|
example: "5s"
|
|
type: duration
|
|
- name: readTimeout
|
|
required: false
|
|
description: |
|
|
Timeout for socket reads. If reached, redis commands will fail with a timeout instead of blocking. Defaults to "3s", "-1" for no timeout.
|
|
example: "3s"
|
|
type: duration
|
|
- name: writeTimeout
|
|
required: false
|
|
description: Timeout for socket writes. If reached, redis commands will fail with a timeout instead of blocking. Defaults is readTimeout.
|
|
example: "3s"
|
|
type: duration
|
|
- name: poolSize
|
|
required: false
|
|
description: Maximum number of socket connections. Default is 10 connections per every CPU as reported by runtime.NumCPU.
|
|
example: "20"
|
|
type: number
|
|
- name: poolTimeout
|
|
required: false
|
|
description: Amount of time client waits for a connection if all connections are busy before returning an error. Default is readTimeout + 1 second.
|
|
example: "5s"
|
|
type: duration
|
|
- name: maxConnAge
|
|
required: false
|
|
description: Connection age at which the client retires (closes) the connection. Default is to not close aged connections.
|
|
example: "30m"
|
|
type: duration
|
|
- name: minIdleConns
|
|
required: false
|
|
description: |
|
|
Minimum number of idle connections to keep open in order to avoid the performance degradation associated with creating new connections. Defaults to "0".
|
|
example: "2"
|
|
type: number
|
|
- name: idleCheckFrequency
|
|
required: false
|
|
description: |
|
|
Frequency of idle checks made by idle connections reaper. Default is "1m". "-1" disables idle connections reaper.
|
|
example: "-1"
|
|
type: duration
|
|
- name: idleTimeout
|
|
required: false
|
|
description: |
|
|
Amount of time after which the client closes idle connections. Should be less than server's timeout. Default is "5m". "-1" disables idle timeout check.
|
|
example: "10m"
|
|
type: duration
|
|
- name: failover
|
|
required: false
|
|
description: |
|
|
Property to enabled failover configuration. Needs sentinalMasterName to be set. Defaults to "false"
|
|
example: "false"
|
|
type: bool
|
|
- name: sentinelMasterName
|
|
required: false
|
|
description: The sentinel master name. See Redis Sentinel Documentation.
|
|
example: "127.0.0.1:6379"
|
|
type: string
|
|
- name: maxLenApprox
|
|
required: false
|
|
description: Maximum number of items inside a stream.The old entries are automatically evicted when the specified length is reached, so that the stream is left at a constant size. Defaults to unlimited.
|
|
example: "10000"
|
|
type: number |