2

好的,请原谅我可能在这里很厚,或者我缺乏对 StackOverflow 的研究,但目前面临着使实时服务器稳定的压力,因此正在研究各种选项。

我们注意到在我们的服务器(Windows 2008/IIS7)上,tmp 文件夹有大约一百万个会话文件(垃圾收集似乎不起作用),所以这可能会导致我的 PHP 网站上的加载时间问题,就像过去一样 2/ 3 周我注意到负载问题。

我的理论是,当 PHP 创建一个会话并想要阅读它时,它必须通过数百万条记录才能找到我的会话。

任何想法,很高兴被告知我的理论完全是废话。


更新至今
清除超过一百万个会话文件似乎减轻了 HDD 的压力,并且与以前相比,PHP 站点的响应速度似乎更快。等待负载增加以查看这些会话文件是否导致初始问题。

4

2 回答 2

1

由于这是一个 I/O 操作,它在访问 tmp 目录中的会话时会变慢。检查您的 php ini 设置以获取http://php.net/manual/en/session.configuration.php#ini.session.gc-maxlifetime

我在服务器故障检查中看到了类似的问题 https://serverfault.com/questions/373024/php-processes-run-one-at-a-time-always-taking-100-of-one-core

于 2012-04-18T17:52:43.577 回答
0

php 5.4 提供了一个 sessionhandler 类来扩展,以便会话可以存储在键值扩展、数据库或其他任何东西中。对于较旧的 php 版本,也有类似的功能。

如果会话似乎是一个瓶颈,则应考虑这一点。

于 2012-04-18T17:56:50.373 回答