手把手教你学Dapr - 5. 状态管理

介绍

使用状态管理,您的应用程序可以将数据作为键/值对存储在支持的状态存储中。

您的应用程序可以使用 Dapr 的状态管理 API 使用状态存储组件来保存和读取键/值对,如下图所示。例如,通过使用 HTTP POST,您可以保存键/值对,通过使用 HTTP GET,您可以读取键并返回其值。

state-management-overview.png

阅读更多
.Net Minimal API 介绍

.Net Minimal API 介绍

Minimal APIs 是.Net 6 中新增的模板,借助 C# 10 的一些特性以最少的代码运行一个 Web 服务。本文脱离 VS 通过 VS Code,完成一个简单的 Minimal Api 项目的开发。

阅读更多

手把手教你学Dapr - 3. 使用Dapr运行第一个.Net程序

注意:

文章中提到的命令行工具即是Windows Terminal/PowerShell/cmd其中的一个,推荐使用Windows Terminal

运行命令行工具的时候建议以管理员身份,避免踩坑

为了保证操作顺畅,建议使用PowerShell先执行一下set-ExecutionPolicy RemoteSigned

阅读更多

手把手教你学Dapr - 2. 必须知道的概念

Sidecar 边车

Dapr API提供Http和gRPC两种通讯方式。

运行方式则可以是容器也可以是进程(Windows开发推荐使用Self Hosted,后续会解释)。

这样的好处是与运行环境无关,且独立运行不需要应用包含Dapr运行时的代码。只需要通过SDK集成即可,这使得Dapr与应用的逻辑分离。

image-20211026110841963.png

Building blocks 构建块

官方解释:可通过标准HTTP或gRPC api访问的模块化最佳实践

通俗一点来说,就是API

目前支持的构建块如下,但1.5很快会出一个新的Configuration API(从这个新的API又印证了构建块的本质),由阿里-敖小剑牵头整理的

Github Issue: https://github.com/dapr/dapr/issues/2988

这个提案很长,很曲折。仔细看会发现中外开发大环境下的一些思想碰撞。微软相对保守,阿里相对激进但也更务实。最终长达几个月的激烈讨论下定版。

期间本人也有幸与阿里-敖小剑阿里-仪式(Layotto的研发同学,Layotto兼容Dapr协议,是蚂蚁在做)开过语音会议一起聊过对于Configuration API的一些设计问题。

阅读更多

手把手教你学Dapr - 1. .Net开发者的大时代

Dapr全称

Distributed Application Runtime,分布式应用运行时

Dapr的口号

简化云原生应用开发,聚焦在应用的核心逻辑,让代码简单、可移植

Dapr的目标

  1. 最佳实践的构建块
  2. 任何语言或框架
  3. 一致性,可移植,开放的API
  4. 采纳标准
  5. 可扩展和可插拔的组件
  6. 与平台无关(本地,云计算,边缘计算等)
  7. 社区驱动,供应商(厂商)中立
    dapr_goals.png
阅读更多
Blazor是春天还是寒风里的挣扎

Blazor是春天还是寒风里的挣扎

官方解释 Blazor

Blazor 允许您使用c#而不是 JavaScript构建交互式web UI。 Blazor 应用由可重用的 web UI 组件组成,这些组件使用 c#、HTML 和 CSS 实现。客户端和服务器代码都是用 c#编写的,允许您共享代码和库。

Blazor 是一个使用 .NET 生成交互式客户端 Web UI 的框架:

  • 使用 C# 代替 JavaScript 来创建信息丰富的交互式 UI。
  • 共享使用 .NET 编写的服务器端和客户端应用逻辑。
  • 将 UI 呈现为 HTML 和 CSS,以支持众多浏览器,其中包括移动浏览器。
  • 与新式托管平台(如 Docker)集成。

使用 .NET 进行客户端 Web 开发可提供以下优势:

  • 使用 C# 代替 JavaScript 来编写代码。
  • 利用现有的 .NET 库生态系统。
  • 在服务器和客户端之间共享应用逻辑。
  • 受益于 .NET 的性能、可靠性和安全性。
  • 在 Windows、Linux 和 macOS 上使用 Visual Studio 保持高效工作。
  • 以一组稳定、功能丰富且易用的通用语言、框架和工具为基础来进行生成。

看到这里有些小伙伴手中的瓜已经要丢出来了,的确有部分是夸大了的,起码 VS 在三个平台高效工作这事儿,嗯。。。其他的继续吃瓜吧

阅读更多
Blazor是春天还是寒风里的挣扎

Blazor是春天还是寒风里的挣扎

官方解释 Blazor

Blazor 允许您使用c#而不是 JavaScript构建交互式web UI。 Blazor 应用由可重用的 web UI 组件组成,这些组件使用 c#、HTML 和 CSS 实现。客户端和服务器代码都是用 c#编写的,允许您共享代码和库。

Blazor 是一个使用 .NET 生成交互式客户端 Web UI 的框架:

  • 使用 C# 代替 JavaScript 来创建信息丰富的交互式 UI。
  • 共享使用 .NET 编写的服务器端和客户端应用逻辑。
  • 将 UI 呈现为 HTML 和 CSS,以支持众多浏览器,其中包括移动浏览器。
  • 与新式托管平台(如 Docker)集成。

使用 .NET 进行客户端 Web 开发可提供以下优势:

  • 使用 C# 代替 JavaScript 来编写代码。
  • 利用现有的 .NET 库生态系统。
  • 在服务器和客户端之间共享应用逻辑。
  • 受益于 .NET 的性能、可靠性和安全性。
  • 在 Windows、Linux 和 macOS 上使用 Visual Studio 保持高效工作。
  • 以一组稳定、功能丰富且易用的通用语言、框架和工具为基础来进行生成。

看到这里有些小伙伴手中的瓜已经要丢出来了,的确有部分是夸大了的,起码 VS 在三个平台高效工作这事儿,嗯。。。其他的继续吃瓜吧

阅读更多