ASP.NET 应用在 AWS EC2 t2.micro 上表现缓慢

3
我刚开始使用AWS,正在尝试在t2.micro EC2实例上托管运行ASP.NET MVC和Web API Web应用程序。数据库是MS SQL Server Express 2016的RDS实例。 从昨晚开始,网站正常运行直到今天下午,突然变得非常缓慢不可用,现在又可以正常运行了。根据应用程序日志,似乎数据库调用需要很长时间,但我不确定是什么原因导致的,也不知道该检查什么来诊断问题。
以下是一些疑问:
1. 是CPU点数的问题吗?当它运行非常缓慢时,我的点数为86,现在正常运行时我的点数为126。 2. RDS是否也保持CPU点数?我需要在这里检查些什么吗? 3. 86 CPU点数对于运行ASP.NET MVC和Web API应用程序来说是否太低?
以下是更多信息: 1. 在过去24小时中,最大CPU利用率达到了12.9%,然后在1-2分钟内达到了13.8%,否则一直低于1%。
提前感谢您的帮助!

我从未发现T2.micro足够快或足够大来运行Windows Server,即使是最小的工作负载。考虑的最小规格是T2.small。 - John Hanley
1个回答

2
起初,启动应用程序总是CPU绑定的过程。为了了解EC2的工作原理,您可能需要执行以下操作:
  1. T2.micro有30个可用的CPU学分。
  2. 您可以查看CloudWatch指标(如CPUCreditBalance和CPUCreditUsage)来查看实例可用CPU学分的详细信息,同时实例正在运行。
  3. 检查可用学分并将其与最大CPU负载期间的实例性能进行匹配。
  4. 最后,您可以启用T2无限选项,然后再次检查性能。
希望这有所帮助。

谢谢!我猜 CPU 学分大部分在我安装应用程序的时候就被消耗完了,我还必须启用某些 Windows 功能,这使实例重新启动了几次,这可能也更多地利用了 CPU。自第二天以来,它一直运作得很好。将继续监视 CloudWatch 指标并观察情况如何发展。 - sharath.g

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接