Как выполнить длительную работу и не дождаться результата с помощью ASP.NET MVC? Эта работа может отправлять миллионы электронных писем, отправлять push-уведомления или любые другие длительные работы/процессы, которые нам не нужны, когда это делается, нам просто нужно знать, что процесс запущен.Как выполнить длительную работу и не дождаться результата с помощью ASP.NET MVC?
Я реализовал это с помощью службы Windows, которая периодически проверяет, есть ли какое-то электронное письмо для отправки, а затем выполнить процедуру отправки. Это хорошо, потому что он отделен от сети, может продолжать выполнение до тех пор, пока это необходимо и достаточно надёжно. Плохо то, что нужно периодически проверять, отправляются ли электронные письма, и с этого интервала углубляет время ожидания пользователей. В случае push-уведомлений, и если уведомления должны быть получены немедленно, возможно, это не будет лучшим решением.
Как вызвать метод в отдельном потоке из одного сеанса пользователя и убедиться, что он выполнен и продолжает работать, даже когда пользователь выходит из системы с сайта?