【发布时间】:2017-08-21 18:20:00
【问题描述】:
- 服务器 - Windows Server 2012 R2
- CPU - AMD Opteron(tm) 处理器 6174 2.20GHz(12 个处理器)
- 内存 - 8.00 GB
- 系统类型 - 64 位操作系统
- IIS - 版本 8.5.9699.16384
- SiteFinity - 9.1.6131
- 虚拟服务器
- 无负载平衡
- 数据库 - 不受影响/单独的服务器
我们的服务器 IIS 工作进程定期运行应用程序池,用于我们网站的生产版本,使用 SiteFinity 构建,峰值并保持 100%。 Web 应用程序中的某些东西正在利用机器可用的所有资源来运行 IIS 工作进程。
我们的网站在负载最小的情况下会突然开始使用所有可用的处理器,我们无法追踪此问题。它似乎不会在一天中的任何时候发生,也不会受到高负载的影响。发生这种情况时,我们必须为机器分配大量资源,这需要重新启动,因为我们不是云托管的,或者我们必须回收应用程序池并释放资源并刷新请求并希望我们杀死过程。
我们已经通过优化文档启动,我们所有的页面都在一个“标准”缓存上,3分钟缓存一个幻灯片。我们所有的图片都在一个带有幻灯片的长缓存策略上,我们所有的图片也在磁盘上,不通过 CMS 提供。
进行了一些挖掘,发现了一些非常古老的文章,详细说明了听起来正是我们的问题。我知道这些都非常旧并且在非常旧的 SF 实例中,但是问题听起来相同,CPU 利用率高且负载最小:
- http://www.sitefinity.com/developer-network/forums/bugs-issues-/sitefinity-down---w3wp-exe-using-95--100-of-cpu
- http://www.sitefinity.com/developer-network/forums/bugs-issues/high-cpu-utilization
最近有人在使用 SiteFinity 时遇到过类似的情况,并且有任何提示/技巧/优惠券来说明您为解决或定位占用服务器资源的流氓进程所做的工作吗?
感谢并期待您的回复。
【问题讨论】:
-
您是否有证据支持您的说法,即在高 CPU 负载期间网站上的流量较低?您是否检查过该高峰期间每秒的请求数?这可能是一种自动攻击——有人正在运行一个向您的站点发送数十万个请求的工具。您是否有任何可能占用资源的复杂自定义代码?
-
我没有数字来支持我的主张,只有当工作进程达到峰值时我的经验。发生这种情况时,网站需要几分钟才能加载,因此在页面上执行管理功能会很痛苦。我们查看了 IIS 日志并与我们的托管公司进行了交谈,流量看起来并不可疑,所以我们仍然认为我们没有受到攻击。就我们的自定义代码而言,我们尽量保持库存(以节省时间),但我们确实有一些进程在夜间运行,我会检查它们是否没有完成并消耗资源。跨度>
-
是的,检查您拥有的那些自定义作业并告诉我们
标签: asp.net caching iis cpu-usage sitefinity