.NET の世界でマイクロサービス指向のアプリケーションを構築するには? .NET の世界でマイクロ サービス指向のアプリを作成できるプラットフォームはありますか? マイクロ サービス、イベント ストア、一部の NoSQL データベースを含むアーキテクチャをどのように想定するか? ありがとう。
5 に答える
このリンクをクリックすると、.NET フレームワーク、ASP.NET、およびRabbitMQを使用して単純なマイクロサービス フレームワークをセットアップするためのステップ バイ ステップ ガイドが表示されます。
チュートリアルは、核となる概念から始まり、実用的なアプリケーションを実装し、そのアプリケーションをサイズと複雑さの観点からスケーリングし、各ステップで典型的なマイクロサービスの問題に取り組みます。
マイクロサービスは、フレームワークや一連のライブラリというよりも、アーキテクチャ上のアプローチです。しかし、.Net の世界では、OWIN (Open Web Interface for .NET) を使用して、Web サービス用の独立したプロセスを作成できます。
セルフ ホスティング Web サービス (IIS は必要ありません) を実装する例を以下に示します。
http://www.asp.net/web-api/overview/hosting-aspnet-web-api/use-owin-to-self-host-web-api
これにより、セルフホスティング サービスなどのマイクロサービスを 1 台以上のマシンに実装できます。データベースまたはイベント ソースの種類は、アプリケーションによって異なります。
次に、アプリケーションによってクエリされる API Rest を構築できます。これは、アクセスの中心点、Facade パターンのように使用され、すべてのリクエストがミニオン マイクロサービスの 1 つに変換されます。
Microsoft は、マイクロサービスのプラットフォームを提供するService Fabricをリリースしました。
これは Azure オファリングですが、 Windows Server 2016を使用してオンプレミスでも利用できます。
VS2015 を実行している開発マシンに Service Fabric をインストールし、SDKを使用して試すことができます。
ご覧ください。これはホットなトピックであり、状況は日々変化していることに注意してください。現在、マイクロサービスに関する中心的な動きは、主に Java の世界で起こっています。
http://abdullin.com/post/how-micro-services-approach-worked-out-in-production/
マイクロサービスを操作する際に選択するプロトコルは HTTP であるため、API レイヤーには .NET Web API をお勧めします。マイクロサービスは SOA の 4 つのテナントを尊重するため、すべてのサービスに独自のデータ ストレージがあり、すべての「サービス」が独立して展開できるようにする必要があります。すべてのサービスが独自の実装を持つことができるため、アーキテクチャをセットアップする際に最も重要な側面は API コントラクトに関連していると言えます。
.NET Web API + NServiceBusdo は、マイクロサービスに基づくアーキテクチャの優れた基盤を提供します。