Member 13907307 Ответов: 2

Как запустить запланированные задачи на ASP.NET применение


Всем Привет,

У меня есть проект C#, который регистрирует данные в базе данных sql server и отслеживает данные в реальном времени в windows form, Проект C# считывает данные с устройств TCP/IP через сокет ethernet, где я посылаю команду и считываю ответ из потока каждые (1) секунды с помощью таймера windows form.
И второй интервал таймера = 5 (мин), где данные сохраняются в sql server.
я хочу преобразовать это в asp.net чтобы позволить пользователю получить доступ к серверу через веб-сайт из любого места.

как лучше всего это сделать на стороне сервера, когда я использую asp.net или откуда я могу начать подключаться и получать данные с устройств, как это было в проекте C#.

Что я уже пробовал:

Я уже пробовал "висячий костер". но есть ли способ запустить задачу в фоновом режиме?

2 Ответов

Рейтинг:
1

MadMyche

Дешевый и простой метод состоит в том, чтобы иметь определенный URL-адрес для запуска задачи и использовать такую службу, как PINGDOM, чтобы попасть по этому конкретному URL-адресу.


Рейтинг:
0

Keviniano Gayo

Вы можете попробовать кварц
[https://www.quartz-scheduler.net/]

Но запуск фоновой задачи в Asp.net приложение ненадежно, потому что оно будет работать только в том случае, если ваше веб-приложение имеет активные запросы или запущено.

Я использовал приложение windows service (C#) для запуска фоновых задач


Member 13907307

Спасибо.
Но эта услуга будет включена в проект ?
а как заставить эту службу работать непрерывно и как я могу определить, правильно ли она запущена или перестала работать?
извините за вопросы но я новичок в этом деле asp.net

Keviniano Gayo

Служба windows находится в отдельном проекте.. Вы должны установить его на сервере.
Он будет работать непрерывно, он будет отображаться в службах (services.msc) в windows, и вы можете увидеть состояние, если он запущен или остановлен.

Или вы можете попробовать "решение 2", которое я также использовал для запуска задачи, просто убедитесь, что запрос поступает из pingdom при развертывании в производство.