【问题标题】:Is it possible for laravel to reach 1000 TPS? [closed]laravel 有可能达到 1000 TPS 吗? [关闭]
【发布时间】:2020-10-30 03:57:46
【问题描述】:

有一个基于 Laravel 构建的应用程序,该应用程序应该可以承受每秒 1000 个请求的负载。

我完成了以下任务:

1- Composer 自动加载已被转储 2-查询结果被缓存 3- 所有视图都已缩小

我还应该考虑什么?

(应用在 docker 容器上运行)

【问题讨论】:

  • 事务是指数据库事务还是请求?一般来说,PHP 在自己的进程上运行,因此据我所知,它受到底层系统和它可以处理的并发请求数量的限制。
  • 这更多的是关于架构而不是特定的编程问题。

标签: php laravel performance docker load


【解决方案1】:

提高 Laravel 性能的技巧

配置缓存,

路由缓存。

删除未使用的服务。

类图优化。

优化作曲家自动加载。

限制使用插件。

这里是完整的详细文章click

【讨论】:

    【解决方案2】:

    如果您达到 TPS,您如何衡量?我将首先获得一个基线,以了解您是否基于该基线开始研究您的应用程序堆栈的哪一部分(这包括 Web 和数据库服务器以及使用的其他服务。)可用的工具是 JMeter 或阿帕奇工作台

    为了达到 1000 TPS,您需要调整网络服务器以允许此类负载。如何解决这个问题取决于所使用的网络服务器。因此很难为您提供具体的信息。

    关于您的数据库服务器,还有一些工具可以用来对它们进行基准测试,例如 pgBadger(postgres) 或特定于慢查询的日志文件。

    最终,您还希望使用最新的 PHP 版本之一,因为它们在每个新版本中都有相当多的性能提升。目前最新发布的PHP版本是7.4

    在我看来,这些调整会比调整 PHP 代码有更大的性能提升(假设没有滥用 php)。但这当然取决于您的应用程序的具体情况。

    您还应该能够垂直扩展(与水平相反),以便每次随着每个应用程序服务器的 TPS 数量增加 TPS。

    【讨论】:

    • 感谢您的留言,我使用 NGINX 作为我的网络服务器,数据库是 MySQL
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-12-10
    • 1970-01-01
    • 2011-03-04
    • 2014-09-05
    • 1970-01-01
    • 2021-06-03
    • 1970-01-01
    相关资源
    最近更新 更多