Php Laravel5.1AJAXGET请求加载页面的时间大大延长

Php Laravel5.1AJAXGET请求加载页面的时间大大延长,php,jquery,mysql,ajax,laravel-5.1,Php,Jquery,Mysql,Ajax,Laravel 5.1,我使用的是Laravel5.1,我希望将ajax get请求调用作为管理仪表板 我使用DB查询来返回响应,并使用ajax获取表和图形上的数据,因为我有日期过滤器和其他过滤器 当我点击apply按钮时,我的应用程序加载速度太慢,在页面上发出不同类型的请求 这就是我正在做的 $data = DB::table("leads") ->select((array(DB::Raw('DATE(leads.created_at) as creation'), DB::Raw("COUNT(lea

我使用的是Laravel5.1,我希望将ajax get请求调用作为管理仪表板

我使用DB查询来返回响应,并使用ajax获取表和图形上的数据,因为我有日期过滤器和其他过滤器

当我点击apply按钮时,我的应用程序加载速度太慢,在页面上发出不同类型的请求

这就是我正在做的

  $data = DB::table("leads")
->select((array(DB::Raw('DATE(leads.created_at) as creation'), 
DB::Raw("COUNT(leads.id) as total_leads"), DB::Raw("leads.id as id"),DB::Raw("leads.customer_name as customer_name" ),DB::Raw("leads.city as city"), DB::Raw("leads.email as email"),DB::Raw("leads.contact as contact"),DB::Raw("leads.source as source"),DB::Raw("leads.campaign_name as campaign"),DB::Raw("leads.ad_group as ad_group"),DB::Raw("leads.ad as ad"),DB::Raw("leads.keyword as keyword") )))
->where("leads.created_at",">=",$startDate)
->where("leads.created_at","<",$endDate)
->groupBy("leads.created_at")
->orderBy("leads.created_at","desc")
->get();

 return view("dashboard",compact("data"));
我返回另一个刀片模板以替换div ack

这在localhost中非常有效,而且它的工作速度比在服务器上加载快得多,但是当我在linode服务器上加载它时,这个查询会变得太慢而无法工作。我已经安装了debugbar,它说加载所有查询需要400毫秒。服务器上可能存在任何配置问题,因为它只使用了以前配置的apache

我在几个页面上有太多的DB查询,比如仪表板、leads页面

我需要做些什么来优化我的laravel5.1应用程序,以及如何使用ajax轻松地为其提供服务


请告诉我任何解决方案,以便ajax发出的加载请求在加载另一个提取数据视图的刀片模板时花费更少的时间。

您的刀片文件可能会遇到大问题。请正确设置您的文件,并将js、css呈现到一个主刀片文件中,而不是呈现ajax的刀片模板上


始终记得启动js,如果页面加载加载时初始化的javascript不起作用,则需要在不同的单击中呈现js。因此,在ajax成功函数中,为特定元素启动javascript。

您的刀片文件可能会遇到大问题。请正确设置您的文件,并将js、css呈现到一个主刀片文件中,而不是呈现ajax的刀片模板上

始终记得启动js,如果页面加载加载时初始化的javascript不起作用,则需要在不同的单击中呈现js。因此,在ajax成功函数中,为特定元素启动javascript

  $(document).ready(function(){
  $(".applyBtn").on("click",function(){

  var i = $('input[name="daterangepicker_start"]').val();
  var e = $('input[name="daterangepicker_end"]').val();
  console.log(i);

  console.log($("input[id=daterangepicker_start1]").val($('input[name="daterangepicker_start"]').val()));
    console.log($("input[id=daterangepicker_end1]").val($('input[name="daterangepicker_end"]').val()));
  var data = "daterangepicker_start="+i+"&daterangepicker_end="+e;
  $.ajax({
    type:"GET",
    data:data,
    url:'{{ URL::to("/date1") }}',
    success:function(data)
      {
    $("#ack").html(data);

      }
  })