Dapr能运行各种各样的应用程序包含python、java、node、.net等。
Dapr 使用主要有两种模式:
初始化时选择docker外相关文档:https://docs.dapr.io/operations/hosting/self-hosted/self-hosted-no-docker/
本文主要是讲解.net技术栈的使用。
打开vs创建控制台应用程序
安装Dapr包
dotnet add package Dapr.Client
using Dapr.Client;
const string storeName = "statestore";
const string key = "counter";
var daprClient = new DaprClientBuilder().Build();
var counter = await daprClient.GetStateAsync<int>(storeName, key);
while (true)
{
Console.WriteLine($"Counter = {counter++}");
await daprClient.SaveStateAsync(storeName, key, counter);
await Task.Delay(1000);
}
更新的代码实现以下步骤:
使用如下dapr运行程序
dapr run --app-id DaprCounter dotnet run
可以看到redis中已经有计数器的数据
apiVersion: dapr.io/v1alpha1
kind: Component
metadata:
name: statestore //组件名
namespace: production //组件所在命名空间
spec:
type: state.redis //组件类型
version: v1 //组件版本
metadata: //组件信息
- name: redisHost //redis主机ip
value: localhost:6379
- name: redisPassword //redis密码
value: ""
- name: actorStateStore
value: "true"
scopes:
- DaprCounter //什么程序可以访问