更新组件
更新应用程序使用的已部署组件
在更新应用程序使用的现有已部署组件时,除非启用了 HotReload 功能门控,否则 Dapr 不会自动更新组件。需要重启 Dapr sidecar 才能获取组件的最新版本。具体操作方式取决于托管环境。
Kubernetes
在 Kubernetes 中运行时,更新组件的过程包括以下两个步骤:
- 将新的组件 YAML 应用到所需的命名空间。
 - 除非启用了 
HotReload功能门控,否则需要对部署执行 滚动重启操作 以获取最新组件。 
自托管
除非启用了 HotReload 功能门控,更新组件的过程包括停止和重启 daprd 进程以获取最新组件的单个步骤。
热重载(预览功能)
此功能目前处于预览状态。 热重载通过
HotReload功能门控 启用。
Dapr 可以实现“热重载”组件,从而在不需要重启 Dapr sidecar 进程或 Kubernetes pod 的情况下自动获取组件更新。这意味着创建、更新或删除组件清单将在运行时反映在 Dapr sidecar 中。
更新组件
当组件更新时,它首先被关闭,然后使用新配置重新初始化。这会导致组件在此过程中短时间内不可用。初始化错误
如果通过热重载创建或更新组件时初始化过程出错,Dapr sidecar 会遵循组件字段 spec.ignoreErrors 的设置。也就是说,行为与 sidecar 在启动时加载组件时相同。
spec.ignoreErrors=false(默认): sidecar 优雅地关闭。spec.ignoreErrors=true: sidecar 继续运行,既没有注册旧的也没有注册新的组件配置。
除以下类型外,所有组件均支持热重载。这些组件类型的任何创建、更新或删除都将被 sidecar 忽略,需要重启以获取更改。