【问题标题】:Laravel on kubernetes - slow composer vendor autoload (production)Kubernetes 上的 Laravel - 缓慢的作曲家供应商自动加载(生产)
【发布时间】:2019-02-11 13:37:11
【问题描述】:

我们在谷歌云平台上为我们的 laravel 应用搭建了一个 kubernetes 集群。 容器:

  • 应用代码+php-fpm
  • apache2
  • 与问题无关的其他人

(我们在 nginx-ingress-controller 下运行,但这似乎与问题无关)

我们在一个返回“ok”的简单 laravel 路由上运行 jmeter 压力测试,我们注意到响应时间很糟糕。

之后我们在 index2.php 上运行相同的测试(在公共目录 το 内滑动框架),它只返回“ok”。

我们得到了这个结果(!):

经过挖掘,我们发现作曲家的自动加载内容会导致这种缓慢。

任何关于如何解决此问题的建议将不胜感激。

谢谢

【问题讨论】:

  • 你试过composer dump-autoload -a --no-dev吗?
  • 是的,我们尝试了所有的 dump-autoload 优化和 composer 安装 --optimize-autoloader --classmap-authoritative

标签: laravel kubernetes composer-php autoload vendor


【解决方案1】:

好的。我们发现我们没有启用 opcache。 正如有关作曲家优化自动加载器的记录:

在 PHP 5.6+ 上,类映射也缓存在 opcache 中,大大缩短了初始化时间。如果您确保 opcache 已启用,那么类映射应该几乎立即加载,然后类加载速度很快。

【讨论】:

    猜你喜欢
    • 2018-11-27
    • 2015-10-22
    • 2020-06-24
    • 2018-06-15
    • 1970-01-01
    • 2016-08-30
    • 2016-05-28
    • 2013-02-07
    • 2016-02-08
    相关资源
    最近更新 更多