【问题标题】:Concurrent Connection Apache and Laravel并发连接 Apache 和 Laravel
【发布时间】:2019-05-26 06:54:48
【问题描述】:

我对最近才变得更加明显的问题感到有些困惑,我希望有人能够指出我可以在哪里寻找合适的设置,或者如果我正在跑步进入他们之前遇到的另一个问题。

我有一个 Laravel 应用程序和一个私人服务器,用于我们的小博物馆。现在,随着应用程序变得越来越复杂,延迟很明显,您可以看到它几乎是如何排列连接的,在移动到下一个请求之前完成一个请求,无论是 api、ajax、查看响应等等。

我运行的是 Apache 2.4.29,我的 Ubuntu 服务器是 18.04.1。

我一直在环顾四周,但在连接设置方面并没有太大帮助,如果我查看我的 phpinfo(),我会看到 Max Requests Per Child: 0 - Keep Alive: on - Max Per Connection: 100,但我相信这些都很好。

如果我检查我的内存,我认为它说我有 65 GB 的可用内存,其中 5 GB 用于缓存。在查看实时数据时,内存永远不会进入 GB 区域,而只会保留在 MB 区域。这个服务器绝对只用于这个 Laravel 项目,所以我不必担心会弄乱其他项目,我只是想确保这个应用程序得到最好的使用。

如果有任何建议,我将不胜感激,我知道我正在搜索的术语可能不正确,或者可能只是过时了,所以如果那里有任何潜在的有用资源,我也将不胜感激。

非常感谢!

【问题讨论】:

  • 有了这么多内存,我认为您需要再次查看您的代码

标签: laravel apache ubuntu laravel-5 ubuntu-18.04


【解决方案1】:

这真的很难说清楚,因为缺少很多细节,但这里有一些东西可以让你知道在哪里看:

  1. 尝试通过 apt-get 下载 htop,看看每次向服务器发出请求时 CPU/RAM 负载会发生什么变化。

  2. 您是否使用 php-fpm 来管理 php 请求?这可能有助于找出问题出在您的 PHP 代码还是 apache 配置中

  3. 您是否尝试过部署到不同的服务器?您是否还看到另一台服务器上的滞后?如果不是,这表明存在错误配置问题,而不是您的代码问题。

  4. 您是否有其他进程在后台运行并且可能会减慢速度?克朗? Laravel 队列?

  5. 如果您尝试在服务器上安装另一个应用程序(比如 phpmyadmin),它是否也很慢或运行良好?

试着从这里拿走它。祝你好运。

【讨论】:

  • 一点更新,我会根据你的数字更新。 1) 已经添加,并且我想如果我有多个来自不同地方的人(为了安全起见)尝试访问,并且 CPU/RAM 的使用很少(如果它几乎没有)达到总使用量的 1%。 2)我没有,但这将是我的下一个任务。 3) 我下周晚些时候将有一台新服务器用于另一个项目,但是您是否有任何资源可以寻找可能找到错误配置(如果有的话)? 4) 我现在有一个 cron,它每分钟运行一次,但很少做任何事情。
  • Continue... - on 4) ... 只是为了确保事情不会堆积(例如临时文件或状态更改)。 5)添加 phpmyadmin 让我想知道 Laravel 本身是否有一些我没有注意到的东西,因为我可以加载/重新加载 PhpMyAdmin 页面(以及其他试图强制它处理多个连接的页面),而它需要Laravel 开机几秒。
  • 好的,所以如果 phpmyadmin 工作正常,这意味着配置可能没有问题,服务器本身也没有问题。也许正如你所建议的那样,你在 laravel 代码中遗漏了一些东西?
  • 你可能是对的,所以我已经安装了一个新的临时服务器,并且刚刚创建了一个全新的 laravel 安装,使用相同的后端数据库。使用 Laravel 调试栏,我看到旧应用程序的启动时间从 1.2 秒下降到 8.5 秒,而新应用程序的启动时间则下降到 3.1 毫秒(并且仍在使用相同的数据库)。我设置了一个页面,它基本上在同一个 html 模板中加载完全相同的信息,并且加载时间不同。所以它必须是旧 Laravel 项目中的某些东西导致了重大问题......不幸的是我在那个方面不知所措
  • 谢谢你的帮助,我会接受你的回答,只是为了成功缩小它本身是一个 Laravel 问题,而不是服务器或任何其他处理问题.
猜你喜欢
  • 2013-06-09
  • 1970-01-01
  • 1970-01-01
  • 2015-04-22
  • 2011-12-16
  • 1970-01-01
  • 2020-08-31
  • 2018-11-10
  • 1970-01-01
相关资源
最近更新 更多