我在linux服务器上有一个用cakephp写的网站。我有一个问题,我的css和js文件下载速度极慢。例如,在加载我的主页时,这是chrome中的网络选项卡:

如你所见,我的一个css文件花了59秒下载!重要的是要注意,它并不总是相同的css文件。有时是它的JS文件,有时是其他css,但它们必须在页面的其他内容显示之前下载,因此它们会阻止页面加载。由于需要等待该文件下载,网站在59秒内不会显示。
我检查了我的服务器,它的负载非常低,cpu运行在10%,ram使用率不到20%。它是具有以下prefork设置的apache服务器:
StartServers 10
MinSpareServers 10
MaxSpareServers 20
ServerLimit 256
MaxClients 256
MaxRequestsPerChild 10000这提到的缓慢下载时间发生在网站上可能有3-4个同时使用的用户。我有我的应用程序下的APM与appdynamics,没有任何可疑的显示在那里。我与服务器管理员检查了php.ini文件,一切似乎也很好。我还可以使用哪些软件来查找此问题的根源?apache日志中也没有太多信息。
如有任何建议,我们将不胜感激
编辑:
我将我的所有资产移动到webroot,并在使用同一服务器的另一个域上获得了这些结果:

如您所见,这一次是jquery文件,下载耗时27秒。它存储在app/webroot中
发布于 2015-09-22 22:02:57
我将看看来自webroot的服务资产
总是把公共资产放在webroot中。
From the book (已添加强调):
这是一个众所周知的事实,通过PHP提供资产的肯定比不调用PHP提供这些资产的速度要慢。虽然核心团队已经采取措施让插件和主题资产尽可能快地提供服务,但在某些情况下可能需要更高的性能。在这些情况下,建议您将插件/主题资源符号链接或复制到app/webroot中的路径与CakePHP使用的路径匹配的目录中。
根据许多因素,“慢”可以在几乎不可察觉到几乎不可用之间的任何地方。
这个建议不是特定于版本的,而且几乎总是适用的。要使资源加载更快,请让let服务器为您处理它们。
发布于 2015-09-22 21:44:27
你有没有尝试过精简你的代码?在不删除任何功能的情况下,从代码中减少不必要的字符。这有助于加快下载速度。
请查看以下链接:http://www.htmlgoodies.com/beyond/reference/7-tips-to-make-your-websites-load-faster.html
https://stackoverflow.com/questions/32717415
复制相似问题