Compute Engine回收应用程序的原因

时间:2019-01-04 05:00:25

标签: asp.net-core google-cloud-platform google-compute-engine main

我已经为启用ASP.NET Core的Compute Engine实例设置了日志记录。我发现在看似随机的时间,public static void Main(string[] args)方法被重新输入。有人告诉我这是由于应用程序回收。

此行为是我的代码失败的结果吗?是预定的吗?以及如何预防/确定原因?

谢谢

1 个答案:

答案 0 :(得分:1)

  

此行为是我的代码失败的结果吗?

否,这是IIS的常规内务处理。您的应用程序处于空闲状态,IIS已决定释放并重新启动您的应用程序。原因之一是释放内存。另一个是防止内存泄漏缓慢消耗所有内存。

  

是预定的吗?

这由Idle Timeout控制。您可以使它更长或更短。我不建议更改此设置。考虑一下为什么什么都没有发生(空闲)时需要运行程序。

  

以及如何预防/确定原因?

您可以通过更改Idle Timeout来禁用回收或延迟回收。