2

別のサーバーで Windows サービスが開始されるまで、あるサーバーで Windows サービスを開始してはならないという状況があります。私がやりたいのは、サービスの依存関係を設定することですが、標準"sc <service1> depend= service2"はこれに対応していないようです。

TryUntilSuccesful() のような呼び出しでサービス コードをラップすることもできますが、同じドメイン内のサーバー間で Windows サービスの依存関係を設定するための推奨される方法があるかどうかを知りたいです。

4

1 に答える 1

2

同じマシン上の Windows サービス間の依存関係は、サービス コントロール マネージャー (SCM) によって管理されます。サービスが別のマシンのサービスに依存している場合、SCM は役に立ちません。

したがって、リモート サービスが実行されているかどうかを何らかの方法で監視するために、独自のコードを実行する必要があります。そのコードを実行するには、サービスを依存関係の有無にかかわらず開始できるようにする必要があります。

サービスの目的を知らずに詳細なソリューションを規定することは困難ですが、原則として、サービスには 2 つの操作モードが必要になる可能性があります。 ; もう 1 つは、完全な機能を実行するだけでなく、依存関係を監視し続ける場所です。

この最後の点は非常に重要です。単一マシンの状況とは異なり、リモート マシン上の SCM はリモート サービスの停止を妨げないため、サービスの開始時だけでなく、依存関係を継続的に監視する必要があります。あなたの依存関係について何も知らないからです。

于 2012-09-20T09:05:43.593 に答える