为什么获取页面时会有 15 秒延迟?

为什么获取页面时会有 15 秒延迟?

前段时间,我尝试向 GoDaddy.com 托管服务的经销商付费,以便能够运行 PHP 脚本。(它名为 HostingDude,前身为 CompleteOnlineSolutions,是 Wild West Domains 的子公司。)

每月 4 美元。(你可能会说这不算多,但请记住,如果我的 ISP 没有阻止端口 80 传入,那么我可以每月 0 美元设置自己的服务器。)

一开始,它运行良好。但不久之后,我开始注意到从我请求页面到该页面出现在浏览器中之间有 15 秒的延迟。我问他们的客服人员发生了什么事。他们立即将问题归咎于我和我的 PHP 代码。我仔细检查了我的 PHP 并改进了一些地方,延迟似乎减少到 5 秒——仍然令人无法接受。

过了一会儿,延迟又回到了 15 秒。有一次,我尝试访问他们服务器上的一个基本 HTML 文件,结果延迟只有 10 秒左右。

从浏览器中请求纯 HTML 页面到其出现在浏览器中需要 10 秒。

我再次打电话,他们还是敷衍了事,和以前一样,要求我准确告知他们问题发生的时间,并承诺修复。当我后来提供这些信息时,他们当然没有采取任何措施,我取消了服务。

这是我第一次使用托管服务,它确实让我很失望。

我的问题是,是什么导致了这么大的延迟?Apache 是否有允许在其中设置延迟的功能,还是他们的服务器负担过重?

请注意,我确实要求切换到其他服务器,但他们拒绝允许。

然后我还有一个问题:为什么会发生这种情况:

我仍有该 GoDaddy 经销商的域名,我注意到他们的域名屏蔽服务偶尔会吐出一个空的 HTML 文件,而不是提供显示我的页面的页面——该页面免费托管在我的 ISP 的服务器上。

谢谢。

答案1

人们几乎可以做到任何事物使用 Apache,因此可能的引入延迟,但这样做实际上需要更多服务器资源,因此提供商的成本更高。更有可能的是服务器超载或存在其他类似问题。

但是,我会站在托管提供商这边,首先将问题归咎于 PHP 应用程序,直到您能证明不是这样,然后要求您将问题缩小到一个非常简单的可重复测试用例中。性能问题有时很难确定,而且如果没有具体说明,每月 4 美元的费用,他们根本负担不起。或者,换句话说,托管是一个没有免费午餐的领域,因此,如果您想充分利用廉价提供商,那么在遇到问题时,请尽最大努力确保一切顺利非常简单为他们工资过低、培训不足、工作过度的支持人员。

建议包括:从多个远程客户端以及系统上的本地主机(如果可能)进行一段时间的基准测试。包括您的主应用程序、简单的静态 HTML 页面和非常基本的 PHP。尽可能将性能问题与实际用户负载关联起来。等等。如果您把这些交给他们,但仍然没有得到很好的回应,当然,换一个更好的。

相关内容