29

如何在 .NET 世界中构建面向微服务的应用程序?有没有我们可以在 .NET 世界中编写面向微服务的应用程序的平台?如何构想包含微服务、事件存储和一些 NoSQL 数据库的架构?谢谢。

4

5 回答 5

15

按照此链接获取使用 .NET 框架、ASP.NET 和 RabbitMQ 设置简单微服务框架的分步指南。

本教程从核心概念开始,实现一个工作应用程序,并根据大小和复杂性扩展该应用程序,在每个步骤中解决典型的微服务问题。

于 2015-08-14T15:58:14.030 回答
12

微服务更像是一种架构方法,而不是框架或一组库。但是在 .Net 世界中,您可以使用 OWIN(.NET 的开放式 Web 界面)为 Web 服务创建独立的进程。

您可以在以下位置查看实现自托管 Web 服务(不需要 IIS)的示例:

http://www.asp.net/web-api/overview/hosting-aspnet-web-api/use-owin-to-self-host-web-api

这样,您就可以在一台或多台机器上实现微服务,例如自托管服务。数据库或事件源的类型取决于您的应用程序。

然后,您可以构建一些由您的应用程序查询的 API Rest,用作访问中心点、外观模式,每个请求都将转向您的一个 minions-microservices。

于 2015-07-14T20:23:41.243 回答
10

Microsoft 发布了Service Fabric,它为您提供了一个微服务平台。

它是 Azure 产品,但也将在Windows Server 2016中提供。

您可以在运行 VS2015 的开发机器上安装 Service Fabric 并使用SDK进行试用。

于 2015-08-26T17:05:29.240 回答
3

请看一看。请注意,这是一个热门话题,并且每天都在变化。目前,微服务的核心运动主要发生在 Java 世界中。

http://blog.pivotal.io/pivotal/case-studies-2/tech-start-up-lessons-micro-services-architecture-with-net-and-rabbitmq

http://abdullin.com/post/how-micro-services-approach-worked-out-in-production/

于 2014-12-12T08:06:15.003 回答
3

由于使用微服务时选择的协议是 HTTP,因此我建议将 .NET Web API 用于 API 层。由于微服务尊重 SOA 的 4 个租户,因此您需要确保每个服务都有自己的数据存储,并且每个“服务”都可以独立部署。我想说,建立架构时最重要的方面与 API 合同有关,因为每个服务都可以有自己的实现。

.NET Web API + NServiceBusdo 为基于微服务的架构提供了良好的基础。

于 2015-09-04T11:08:41.893 回答