Mono Develop を使用して C# アプリケーションを開発し、Linux Ubuntu 14.04 にモノサービスとしてデプロイしました。私が理解していないいくつかの問題があります:
- システムの再起動後にモノサービス アプリケーションの実行が停止し、ロック ファイルが存在しないことに気付きました。
- また、コンピューターのモノサービス アプリケーションの電源を切断すると、実行が停止することに気付きました。また、モノサービスアプリを停止してもロックファイルが存在する場合があります。ファイルから PID を読み取り、コマンド「KILL pid」を実行しようとすると、「pid はそのようなサービスではありません」と表示されました。
- 単一サービス アプリケーションが停止している場合、どのファイルも削除できないことに気付き、「許可が拒否されました」という例外を受け取りました。おそらく、プロセスがまだゾンビとして存在しているからでしょう。
さて、私の質問は次のとおりです。モノサービスで実行されるアプリケーションを適切に維持するにはどうすればよいですか? つまり、(ゾンビなしで) 適切に開始、停止し、サービスが常に実行されるようにする方法です。これも維持するためにいくつかのcronジョブを追加する必要がありますか?
Start、Stop、およびResetについては、linux.die.netをたどりました。これが私がサービスを開始する方法です:
mono-service -l:/root/app-lock /home/emc/appfolder/app.exe
また、mattdeboardの記事を読みましたが、サービスを適切に実行し続けるための正しい方法についてはまだ混乱しています。