Service Fabric プログラミング モデルの概要Service Fabric programming model overview

Service Fabric には、サービスの記述と管理に使用できる複数の方法が用意されています。Service Fabric offers multiple ways to write and manage your services. サービスでは、Service Fabric API を使用するように選択して、プラットフォームの機能とアプリケーション フレームワークを最大限に活用できます。Services can choose to use the Service Fabric APIs to take full advantage of the platform's features and application frameworks. サービスはまた、任意の言語で記述されたコンパイル済みの実行可能プログラム、または Service Fabric クラスターでホストされるコンテナー内で実行されているコードにすることもできます。Services can also be any compiled executable program written in any language or code running in a container hosted on a Service Fabric cluster.

ゲスト実行可能ファイルGuest executables

ゲスト実行可能ファイルは、アプリケーション内でサービスとして実行できる既存の任意の実行可能ファイル (任意の言語で記述されたもの) です。A guest executable is an existing, arbitrary executable (written in any language) that can be run as a service in your application. ゲスト実行可能ファイルでは、Service Fabric SDK の API を直接呼び出さないでください。Guest executables do not call the Service Fabric SDK APIs directly. それでも、Service Fabric によって公開される REST API を呼び出すことにより、サービスの検出可能性や、正常性と負荷のカスタム レポートなど、このプラットフォームが提供する機能からメリットを得られます。However they still benefit from features the platform offers, such as service discoverability, custom health and load reporting by calling REST APIs exposed by Service Fabric. また、完全なアプリケーションのライフサイクルのサポートも備えています。They also have full application lifecycle support.

ゲスト実行可能ファイルから始める場合は、最初の ゲスト実行可能ファイルをデプロイしてください。Get started with guest executables by deploying your first guest executable application.

ContainersContainers

既定では、Service Fabric はサービスをプロセスとしてデプロイし、アクティブ化します。By default, Service Fabric deploys and activates services as processes. また、Service Fabric ではコンテナー内のサービスもデプロイできます。Service Fabric can also deploy services in containers. Service Fabric では、Linux コンテナーのデプロイと、Windows Server 2016 での Windows コンテナーのデプロイをサポートしています。Service Fabric supports deployment of Linux containers and Windows containers on Windows Server 2016. コンテナー イメージは、任意のコンテナー リポジトリからプルし、マシンにデプロイすることができます。Container images can be pulled from any container repository and deployed to the machine. 既存のアプリケーションを、ゲスト実行可能ファイルとしてデプロイすることも、コンテナー内の Service Fabric のステートレスまたはステートフルな Reliable Services または Reliable Actors としてデプロイすることもできます。また、プロセス内のサービスとコンテナー内のサービスを同じアプリケーション内で混在させることができます。You can deploy existing applications as guest executables, Service Fabric stateless or stateful Reliable services or Reliable Actors in containers, and you can mix services in processes and services in containers in the same application.

Windows または Linux でサービスをコンテナー化することに関する詳細情報Learn more about containerizing your services in Windows or Linux

Reliable ServiceReliable Services

Reliable Services は、Service Fabric プラットフォームと統合されたサービスを作成できる軽量のフレームワークです。プラットフォームの全機能を活用できます。Reliable Services is a light-weight framework for writing services that integrate with the Service Fabric platform and benefit from the full set of platform features. Reliable Services には、Service Fabric ランタイムがサービスのライフサイクルを管理し、サービスがランタイムとやり取りすることができる最小限の API のセットが用意されています。Reliable Services provide a minimal set of APIs that allow the Service Fabric runtime to manage the lifecycle of your services and that allow your services to interact with the runtime. アプリケーション フレームワークは最小限で、設計と実装の選択を細かく制御できるので、ASP.NET Core など、他のアプリケーション フレームワークのホストに使用できます。The application framework is minimal, giving you full control over design and implementation choices, and can be used to host any other application framework, such as ASP.NET Core.

Reliable Services は、Web サーバーなどのほとんどのサービス プラットフォームと同様にステートレス (サービスの各インスタンスは同様に作成され、状態は Azure DB や Azure Table Storage など、外部のソリューションに維持される) にすることができます。Reliable Services can be stateless, similar to most service platforms, such as web servers, in which each instance of the service is created equal and state is persisted in an external solution, such as Azure DB or Azure Table Storage.

Reliable Services は Service Fabric と排他的でステートフルの場合もあります。Service Fabric は Reliable Collection を使用してサービスに直接維持されます。Reliable Services can also be stateful, exclusive to Service Fabric, where state is persisted directly in the service itself using Reliable Collections. 状態はレプリケーションによって高可用になり、パーティションによって分散されます。いずれも Service Fabric で自動的に管理されます。State is made highly-available through replication and distributed through partitioning, all managed automatically by Service Fabric.

Reliable Services の詳細、または最初の Reliable Services を作成する場合の概要を参照してください。Learn more about Reliable Services or get started by writing your first Reliable Service.

ASP.NET CoreASP.NET Core

ASP.NET Core は新しいオープンソースのクロスプラットフォーム フレームワークであり、Web アプリ、IoT アプリ、モバイル バックエンドなど、最新のクラウドベースのインターネット接続アプリケーションを構築するために使用されます。ASP.NET Core is a new open-source and cross-platform framework for building modern cloud-based Internet-connected applications, such as web apps, IoT apps, and mobile backends. Service Fabric は ASP.NET Core と統合しているので、リライアブル コレクションおよび Service Fabric の高度なオーケストレーション機能を活用するステートレスおよびステートフル両方の ASP.NET Core アプリケーションを記述できます。Service Fabric integrates with ASP.NET Core so you can write both stateless and stateful ASP.NET Core applications that take advantage of Reliable Collections and Service Fabric's advanced orchestration capabilities.

Service Fabric の ASP.NET Core の詳細または初めての ASP.NET Core の Service Fabric アプリケーションの記述に関する記事をご覧ください。Learn more about ASP.NET Core in Service Fabric or get started by writing your first ASP.NET Core Service Fabric application.

Reliable ActorReliable Actors

Reliable Actors フレームワークは Reliable Services 上に構築され、アクター設計パターンに基づいて、Virtual Actor パターンを実装するアプリケーション フレームワークです。Built on top of Reliable Services, the Reliable Actor framework is an application framework that implements the Virtual Actor pattern, based on the actor design pattern. Reliable Actors フレームワークは、独立したコンピューティングのユニットと、アクターという単一スレッドの実行を含む状態を使用します。The Reliable Actor framework uses independent units of compute and state with single-threaded execution called actors. Reliable Actors フレームワークには、アクターとプリセットされた状態の永続性とスケールアウト構成に対応する組み込みの通信が用意されています。The Reliable Actor framework provides built-in communication for actors and pre-set state persistence and scale-out configurations.

Reliable Actors は、Reliable Services 上に構築されたアプリケーション フレームワークであるため、Service Fabric プラットフォームと完全に統合されており、プラットフォームによって用意される機能をすべて利用できます。Because Reliable Actors is an application framework built on Reliable Services, it is fully integrated with the Service Fabric platform and benefits from the full set of features offered by the platform.

Reliable Actors の詳細最初の Reliable Actors サービスを作成する場合の概要を参照してください。Learn more about Reliable Actors or get started by writing your first Reliable Actor service

ASP.NET Core を使用してフロント エンド サービスを構築するBuild a front end service using ASP.NET Core

次の手順Next steps

Service Fabric とコンテナーの概要Service Fabric and containers overview

Reliable Services の概要Reliable Services overview

Reliable Actors の概要Reliable Actors overview

Service Fabric および ASP.NET CoreService Fabric and ASP.NET Core