首页 > 解决方案 > jQuery ajax 响应时间

问题描述

我在本地机器上使用了一个简单的 Ajax get 方法,该方法在我的服务器端 laravel 代码中提供了空函数,并从浏览器网络观察到响应是在 250-500 毫秒内随机返回的。

不能得到任何类似的问题(如果它根本是一个问题),不是很多响应都没有吗?

如果它正常,为什么响应在两个不同的值之间变化两倍。也可以在不同的主机上尝试,结果有时会更糟。

$.get('/index/categories', { id: '1' }, function(data) {
  
    });

(与ajax相同)

拉拉维尔:

public function getCategoriesJson()
{
}

标签: jqueryajaxlaravelperformance

解决方案


Laravel 需要在每个请求上启动,这意味着在执行任何操作之前,Laravel 必须启动、引导其依赖项、创建应用程序实例、创建路由和路由器,毕竟它会解决您的请求,所以有可能修复您的问题。

  1. 如果你有很多包,这可能会延迟启动,所以删除所有未使用的包以减少负载,因为 laravel 在启动时使用 composer 加载所有包,并将它们的所有服务提供者注册到应用程序。
  2. 缓存你的路由,如果你的路由没有被缓存,那么 Laravel 必须在每个请求上生成它们,这是一个简单的命令php artisan route:cache,但请记住,每当你对路由进行更改时,你都必须刷新这个缓存
  3. 使用调试栏查看是什么延迟了您的应用程序,它提供了非常有用的数据,您可能会发现您的查询存在可能延迟响应的问题,以及其他问题。仅在开发环境中安装此软件包

推荐阅读