我有一个运行在Windows Server 2016上的Wep API .NET Core应用程序,通过IIS运行。该应用程序不仅仅是回复其API,还会监控其他服务的事件等。
我有三个问题: 1. 当我通过IIS启动/重启应用程序(或发布更新)时,它不会做任何事情,直到有请求到来才会启动应用程序。有没有办法强制应用程序立即运行? 2. 应用程序进行了大量的后台处理,但有时会完全停止。它有定时器任务未被执行等。如果我不断地向记录器输出工作,就不会发生这种情况。 3. 当应用程序启动时,它会将相当多的信息发送到日志,并且在此期间,我可以看到它启动两次!它开始显示一页日志,然后再次启动。但是奇怪的是:当应用程序启动时,选择一个随机的“可爱名称”以便我们区分实例,并且在原始启动和第二个启动期间,它是相同的名称,因此显示它是同一实例,但是初始化被调用了第二次。
有没有关于在IIS容器中运行应用程序的特定信息,可以解释这些行为?
更多搜索后,推荐的选项是运行为服务,但在我的情况下不可能,所以我仍然需要创建一个带有IIS反向代理的.Net Core Kestrel应用程序。
尽管下面有评论,但我仍然找不到任何好的解决方案,除了定期ping该站点以保持其运行。
我有三个问题: 1. 当我通过IIS启动/重启应用程序(或发布更新)时,它不会做任何事情,直到有请求到来才会启动应用程序。有没有办法强制应用程序立即运行? 2. 应用程序进行了大量的后台处理,但有时会完全停止。它有定时器任务未被执行等。如果我不断地向记录器输出工作,就不会发生这种情况。 3. 当应用程序启动时,它会将相当多的信息发送到日志,并且在此期间,我可以看到它启动两次!它开始显示一页日志,然后再次启动。但是奇怪的是:当应用程序启动时,选择一个随机的“可爱名称”以便我们区分实例,并且在原始启动和第二个启动期间,它是相同的名称,因此显示它是同一实例,但是初始化被调用了第二次。
有没有关于在IIS容器中运行应用程序的特定信息,可以解释这些行为?
更多搜索后,推荐的选项是运行为服务,但在我的情况下不可能,所以我仍然需要创建一个带有IIS反向代理的.Net Core Kestrel应用程序。
尽管下面有评论,但我仍然找不到任何好的解决方案,除了定期ping该站点以保持其运行。