有一个基于 Laravel 构建的应用程序,该应用程序应该准备好每秒加载 1000 个请求。我已经完成了以下任务:1- Composer 自动加载已被转储 2- 查询结果已缓存 3- 所有视图均已缩小我还应该考虑什么?(应用程序在docker容器上运行)
2 回答
慕慕森
TA贡献1856条经验 获得超17个赞
如果达到 TPS,您将如何衡量?我首先会获得一个基线,以便了解您是否基于该基线开始研究应用程序堆栈的哪一部分(这包括 Web 和数据库服务器以及使用的其他服务)。可用的工具是 JMeter 或 Apache Bench
为了达到 1000 TPS,您需要调整网络服务器以允许这种类型的负载。如何解决这个问题取决于所使用的网络服务器。所以很难给你提供具体的情况。
对于您的数据库服务器,也有可用于对其进行基准测试的工具,例如 pgBadger(postgres) 或特定于慢速查询的日志文件。
最终,您还希望使用最新的 PHP 版本之一,因为每个新版本都会带来相当多的性能提升。目前最新发布的PHP版本是7.4
在我看来,这些调整比调整 PHP 代码会有更大的性能提升(假设没有错误使用 php)。但这当然取决于您应用程序的具体情况。
或者,您还应该能够垂直扩展(与水平相反),以便每次随着每个应用程序服务器的 TPS 数量增加 TPS。
- 2 回答
- 0 关注
- 117 浏览
添加回答
举报
0/150
提交
取消