发布于 2026-01-06 1 阅读
0

通过 DevMentors Distributed .NET Core DEV 的全球展示挑战赛示例了解微服务,Mux 隆重推出:展示你的项目!

DevMentors 的微服务示例

分布式 .NET Core

由 Mux 主办的 DEV 全球展示挑战赛:展示你的项目!

介绍

我想几乎每个人都听说过微服务架构。我的目的并非要赞美或否定这种架构。任何解决方案都有其优缺点,微服务也不例外。让我们先来了解一下微服务架构,以便做出判断。现在,我要直奔主题了。我想向大家介绍一个名为“分布式 .Net Core - DShop”(简称 DShop)的项目。这个项目由两位微服务解决方案和微软技术的爱好者Dariusz PawlukiewiczPiotr Gankiewicz发起。他们也是DevMentors的创始人。为什么我认为这个项目值得一提呢?对于对微服务、CQRS、C# 和 DDD 感兴趣的人来说,了解一下这个项目有几个原因(即使你不熟悉 C#,但如果你了解其他 C 系列编程语言,例如 C++、Objective-C、Java 等,你也会从中发现一些有趣的东西)。


你应该对这个项目感兴趣的五个理由:

1)微服务架构是一个热门话题

这是我的个人观点,我假设你也持相同看法,否则你也不会读我的文章。我认为微服务作为一种架构模式很有意思。我并不是说它是万能灵药,可以解决所有问题,但我觉得了解微服务架构的优势和局限性是有益的。最好的方法就是亲自尝试,而DShop正是一个绝佳的机会。

2) DShop 是开源的

您可以在公开的GitHub 代码库中找到所有参与该解决方案的微服务。任何人都可以查看源代码,并提取自己感兴趣的部分。当然,了解该项目最有效的方式是参与贡献。欢迎提交 pull request。

分布式 .NET Core

DevMentors

什么是分布式 .NET Core?

这是一个开源项目(即将推出的课程可在devmentors.io上学习),它深入讲解如何使用.NET Core框架和各种工具构建微服务。其目标之一是创建一个与云平台无关的解决方案,让用户可以在任何地方运行它。

我们鼓励您加入我们的Discourse论坛,网址为forum.devmentors.io

关于本课程,请查看此类别下讨论的主题。

我们将讨论哪些主题?

它们涵盖了构建分布式服务的各个方面,包括代码实现、服务发现和负载均衡管理、日志记录或监控配置,以及最终使用 Docker 部署到虚拟机。

仅举几例:

3)充满活力的社区

Dariusz 和 Piotr 是这个项目的两大支柱,但我们欢迎所有人参与贡献。您可以通过多种方式参与项目,例如论坛GitterTwitter。您可以选择最适合您的沟通渠道。您可以向项目成员提问,也可以提出修改建议。

4)一个 YouTube 频道

说实话,我认为这是 DShop 项目最显著的特点。为什么我会这么认为呢?在我看来,它极具教育价值。在每一集中,Dariusz 和 Piotr 都会通过实例讲解微服务架构的核心概念。他们会快速介绍问题,并在我们眼前解决问题。没错,他们是边录边写代码的。截至撰写本文时,他们已经录制了七集,列表如下:

  • 第一集 - 简介、HTTP、请求流程、Docker 基础设施
  • 第二集 - CQRS - 写入端、折扣服务、MongoDB 存储库
  • 第三集 - 订阅 RabbitMQ 消息,API 网关
  • 第 4 集 - 通过事件实现异步微服务集成
  • 第 5 集 - CQRS - 读取端,内部 HTTP 通信
  • 第六集 - 使用 Consul 和 Fabio 进行服务发现和负载均衡
  • 第 7 集 - 处理异步请求、SignalR、Polly

以下是第一集的链接。

5) DShop 仍在开发中

这个项目并没有停止。Dariusz 和 Piotr 正在不断完善它。他们添加新功能,重构旧代码,录制新的 YouTube 视频。我衷心希望他们能保持热情,继续努力。


结束

微服务架构显然不是一个简单的话题。Dariusz 和 Piotr 假设普通贡献者都具备 Docker 和 RabbitMQ 的基础知识,所以他们并没有深入探讨这些技术的细节。在我看来,熟悉这些工具(尤其是 Docker)是有益的。有了这些知识,我们就可以专注于架构本身,而不是工具的使用。请放心,即使没有 Docker 和 RabbitMQ 的经验,你也能理解主要概念,但可能会稍微困难一些。

最后我想说的是,我很高兴有像Dariusz和Piotr这样的开发者愿意与社区分享他们的知识。感谢他们。

文章来源:https://dev.to/rafalpienkowski/microservices-by-example-with-devmentors-505m