非K8S环境中,如何用Dapr Sidekick为.NET应用提供微服务支持?

2026-05-19 19:551阅读0评论SEO资源
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计627个文字,预计阅读时间需要3分钟。

非K8S环境中,如何用Dapr Sidekick为.NET应用提供微服务支持?

在K8s环境下,通过Operator管理Dapr sidecar,在虚拟机环境下,我们也非常需要这样一个管理组件,类似于下图中所示:

在这张图中,在上图左侧,我们可以看到dapr.exe和我们的应用。

在k8s 环境下,通过Operator 可以管理Dapr sidecar, 在虚拟机环境下,我们也是非常需要这样的一个管理组件,类似下图:


非K8S环境中,如何用Dapr Sidekick为.NET应用提供微服务支持?

在这张图片中,在上图左面,我们看到了“dapr.exe”、我们的应用程序和另一个进程“daprd.exe”之间的通信,该进程实际上是 Sidecar 进程。这是通常的方式(“开箱即用”),例如:

dapr run --app-id backend --app-port 5001 -- dotnet run --urls=localhost:5001/ -p ./WeatherForecastService/WeatherForecastService.csproj

dapr run --app-id proxy --app-port 6001 -- dotnet run --urls=localhost:6001/ -p ./WeatherForecastProxyService/WeatherForecastProxyService.csproj

图片右面,使用 Sidekick简化了此过程/通信,并且我们可以更好地控制以及其他功能。Dapr Sidekick for .NET 是一个组件,它允许我们将 Dapr 添加到我们的项目中以避免摩擦。简化 .NET 开发和操作。 当我们的项目部署在虚拟机环境时,推荐使用这个组件。通过Sidekick 我们的应用程序/进程负责启动和运行 Dapr 所需的一切。

我的示例代码放在这里:github.com/geffzhang/ServiceToService-Sideckick ,通过简单的三步就可以完成这项工作。

1、添加Nuget 包 Man.Dapr.Sidekick.AspNetCore :

dotnet add package Man.Dapr.Sidekick.AspNetCore --version 1.2.1

2、修改类 Startup.cs 的 ConfigureServices 方法如下:

public void ConfigureServices(IServiceCollection services) { services.AddControllers(); // Add Dapr Sidekick services.AddDaprSidekick(Configuration); }

3、接下来,当我们的调用(或代理)应用程序调用另一个应用程序时,名称/id 为“ backend ”,我们需要指定其AppId。以同样的方式,由于我们使用“ localhost:5001

dotnet WeatherForecastProxyService.dll --urls=localhost:6001

欢迎大家扫描下面二维码成为我的客户,为你服务和上云

本文共计627个文字,预计阅读时间需要3分钟。

非K8S环境中,如何用Dapr Sidekick为.NET应用提供微服务支持?

在K8s环境下,通过Operator管理Dapr sidecar,在虚拟机环境下,我们也非常需要这样一个管理组件,类似于下图中所示:

在这张图中,在上图左侧,我们可以看到dapr.exe和我们的应用。

在k8s 环境下,通过Operator 可以管理Dapr sidecar, 在虚拟机环境下,我们也是非常需要这样的一个管理组件,类似下图:


非K8S环境中,如何用Dapr Sidekick为.NET应用提供微服务支持?

在这张图片中,在上图左面,我们看到了“dapr.exe”、我们的应用程序和另一个进程“daprd.exe”之间的通信,该进程实际上是 Sidecar 进程。这是通常的方式(“开箱即用”),例如:

dapr run --app-id backend --app-port 5001 -- dotnet run --urls=localhost:5001/ -p ./WeatherForecastService/WeatherForecastService.csproj

dapr run --app-id proxy --app-port 6001 -- dotnet run --urls=localhost:6001/ -p ./WeatherForecastProxyService/WeatherForecastProxyService.csproj

图片右面,使用 Sidekick简化了此过程/通信,并且我们可以更好地控制以及其他功能。Dapr Sidekick for .NET 是一个组件,它允许我们将 Dapr 添加到我们的项目中以避免摩擦。简化 .NET 开发和操作。 当我们的项目部署在虚拟机环境时,推荐使用这个组件。通过Sidekick 我们的应用程序/进程负责启动和运行 Dapr 所需的一切。

我的示例代码放在这里:github.com/geffzhang/ServiceToService-Sideckick ,通过简单的三步就可以完成这项工作。

1、添加Nuget 包 Man.Dapr.Sidekick.AspNetCore :

dotnet add package Man.Dapr.Sidekick.AspNetCore --version 1.2.1

2、修改类 Startup.cs 的 ConfigureServices 方法如下:

public void ConfigureServices(IServiceCollection services) { services.AddControllers(); // Add Dapr Sidekick services.AddDaprSidekick(Configuration); }

3、接下来,当我们的调用(或代理)应用程序调用另一个应用程序时,名称/id 为“ backend ”,我们需要指定其AppId。以同样的方式,由于我们使用“ localhost:5001

dotnet WeatherForecastProxyService.dll --urls=localhost:6001

欢迎大家扫描下面二维码成为我的客户,为你服务和上云