由于把Core3.1网站部署到IIS,会存在网站回收导致挂载在网站定时任务也停止了。
所以在 Startup里面注册 ApplicationStopped事件,事件里面访问站点,唤醒站点。
但是不知道为啥报 503.求解!
Exception=System.Net.WebException: The remote server returned an error: (503) Service Unavailable.
at System.Net.HttpWebRequest.GetResponse()
at HY.Service.Http.APIHelper.Get(String apiUrl, Dictionary`2 headers) in D:\Project\BHQ\HY.Service\Http\APIHelper.cs:line 80
Url:http://localhost:5001/
ApplicationStopped 代表服务已经停止了. 你的应用程序已经不在处理w3wp传过来的请求,
但是服务进程还在. 所以达不到唤醒的目的.
可以设置iis永不回收, 也可以增加一个windows定时任务执行一下shell请求你的站点.
为啥ApplicationStopped 后我在浏览器请求站点,站点又启动了
在ApplicationStopped事件中请求站点和浏览器请求站点为啥不能一样唤醒站点
@四月的凉风:
ApplicationStopped 后, w3wp进程随后就回收了, 这个时候你在请求iis, iis会启动一个新的w3wp进程.
ApplicationStopped 后, 你在程序中请求iis, 这个时候w3wp进程还没有回收,但是已经不处理请求了.
@czd890: 哦哦 明白了 谢谢大佬