有一个构建在Laravel上的应用程序,应用程序应该准备好每秒加载1000个请求。
我完成了以下任务:
1- Composer autoload已被转储2-查询结果被缓存3-所有视图都已缩小。
我还应该考虑什么呢?
(App运行在码头集装箱上)
发布于 2020-07-09 17:24:13
当你到达TPS时,你是如何测量的?首先,我将获得一个基线,以便了解您的应用程序堆栈的哪一部分(这包括web和数据库服务器以及其他使用的服务)。可以使用的工具是JMeter或Apache Bench。
为了达到1000 TPS,您需要调整webserver以允许这种类型的负载。如何处理这个问题取决于所使用的How服务器。所以很难向你提供具体的信息。
关于您的DB服务器,也有一些工具可以对它们进行基准测试,例如pgBadger(postgres)或日志文件,专门用于慢速查询。
最终,您还希望使用最新的PHP版本,因为它们在每个新版本中都有相当大的性能提升。目前最新发布的PHP版本为7.4
在我看来,这些调整将获得更高的性能,然后调整PHP代码(假设没有错误地使用php)。但这当然取决于应用程序的具体情况。
另外,您还应该能够垂直缩放(水平反对),每次增加TPS,每个应用服务器的TPS数量。
发布于 2020-07-09 17:09:11
https://stackoverflow.com/questions/62816835
复制相似问题