Моносервис остановлен после перезагрузки

Я разработал приложение на C# с использованием Mono Develop и развернул его как моно-сервис в Linux Ubuntu 14.04. Есть несколько проблем, которые я не понимаю:

  1. Я заметил, что моно-сервисное приложение перестает работать после перезагрузки системы и блокировки файла не существует.
  2. Также я заметил, что при отключении питания компьютера моно-сервисное приложение перестает работать. Кроме того, иногда существует файл блокировки, даже если приложение моно-службы остановлено. Когда я прочитал PID из файла и попытался выполнить команду "KILL pid", он сказал: "pid - это не такая служба"!
  3. Если приложение моносервиса остановлено, я заметил, что не могу удалить файл, и получил исключение: "Отказано в доступе". Возможно, потому что процесс все еще существует как Зомби.

Теперь мой вопрос: как я могу правильно поддерживать приложение, которое работает на моно-сервис? Я имею в виду, как я могу правильно запускать, останавливать (без зомби) и гарантировать, что служба будет работать всегда. Нужно ли добавить какую-то работу cron, чтобы поддерживать это тоже?

Я следовал за linux.die.net для запуска, остановки и сброса. Вот как я запускаю сервис:

mono-service -l:/root/app-lock /home/emc/appfolder/app.exe

Также я читаю статьи на mattdeboard, но все еще не понимаю, как правильно поддерживать работу сервиса.

0 ответов

Другие вопросы по тегам