【发布时间】:2010-12-14 17:39:37
【问题描述】:
我试过搜索这个,但很难用语言表达。
基本上,我们的网站对于大多数用户来说都可以正常运行而不会出现任何问题。但有时,我们这些整天大量使用该网站的人会突然完全陷入困境。一切都在原地旋转。该站点本身仍然很好 - 其他人仍然可以访问它,但是单个用户被卡住了。事实上,即使您明确清除 cookie,完全重启浏览器通常也不能解决问题。
不过,您通常可以通过切换到其他浏览器来正常打开该网站。如果您在 Firefox 中陷入困境,通常可以将其打开并继续在 IE 中正常工作。这可以通过两种方式发生(您可以让 IE 陷入困境,然后切换到 firefox 工作)。
这有任何意义吗?好像会话出现了问题,但我不知道是什么原因造成的,应该通过重新启动浏览器并清除 cookie 等来重置会话。
有什么想法吗?
[编辑澄清,对不起,应该包括这个开始] 服务器是 RedHat 上非常基本的 LAMP 堆栈,带有 Apache 2.2.3、PHP 5.2.11、MySQL 5.0.45(我们考虑过升级 MySQL,但我认为这不是这里的问题)。这是 Rackspace 的标准配置,所以除了 Zend Optimizer 之外,我认为我们没有做任何奇特的事情。
我们使用了很多 javascript/jquery,但它们都是非常标准的东西,我不希望内存泄漏不会影响其他浏览器,尽管我可能错了。
此外,我们服务器的 CPU 和内存使用率从未超过 25%,即使出现峰值也是如此,而且峰值似乎与这种现象无关。
【问题讨论】:
-
我在两个客户的网站上遇到过类似的现象,我试图解决几个月都没有成功。非常有兴趣看看这里是否会出现有趣的东西。 +1
-
如果你告诉人们你的服务器是什么,它运行什么服务等可能会有所帮助。
-
您的网站是否使用客户端代码?可能是内存泄漏。
-
当一切都变慢时,查看页面中的 VIEWSTATE 变量。我遇到了类似的问题,发现发送到浏览器的 VIEWSTATE 超过 1MB,所以每个 POST 都会将其发送到服务器。
-
您是否尝试过在 Firefox 停止时加载 Firebug 的脚本或网络面板?这应该让您了解它是脚本执行时间还是浏览器等待来自网络的某些内容。此外,您是否有任何记录服务器端来处理异常长期的请求?
标签: php apache session cross-browser performance