Php 如何减少codeigniter视图加载时间

Php 如何减少codeigniter视图加载时间,php,codeigniter,Php,Codeigniter,我有一个客户表,我正在获取所有客户数据 其中大约有15000行,使用查询 select * from customers order by createdate desc; 索引是在createdate列上创建的。 查询很好,不需要花那么多时间 但是ci视图加载页面大约需要2分钟 我用剖析法检查了这一点 $this->output->enable_profiler(TRUE); 输出 BENCHMARKS Loading Ti

我有一个客户表,我正在获取所有客户数据 其中大约有15000行,使用查询

select * from customers order by createdate desc;
索引是在
createdate
列上创建的。 查询很好,不需要花那么多时间

但是ci视图加载页面大约需要2分钟 我用剖析法检查了这一点

$this->output->enable_profiler(TRUE);
输出

             BENCHMARKS  
            Loading Time: Base Classes                              0.0231
            Header                                                  0.0010
            customersView                                           0.5493 //this is a view taking more time
            Footer                                                  0.0554
            Controller Execution Time ( Customers / CustomersController )   1.2286
            Total Execution Time                                    1.2519



             DATABASE:  vidyanidhi   QUERIES: 2  (Hide)
            0.0535      select * from customers where id=2568 
            0.1799      select * from customers order by createdate desc 

如何减少ci中此视图的加载时间。请有人帮帮我。

减少CI加载时间的一些技巧

  • 下载所有在线资源,如JQUERY、Bootstrap和all。将文件夹call
    assets
    中的内容添加到应用程序文件夹之外,并将其调用到您的
  • 如果您使用的是公共库(JQUERY、Bootstrap),请使用
    .min
    版本
  • 尽可能优化图像
  • 检查所有链接(AJAX、JS)时遇到错误(类似于500404),以便有更多的时间加载视图
    减少CI中加载时间的一些技巧

  • 下载所有在线资源,如JQUERY、Bootstrap和all。将文件夹call
    assets
    中的内容添加到应用程序文件夹之外,并将其调用到您的
  • 如果您使用的是公共库(JQUERY、Bootstrap),请使用
    .min
    版本
  • 尽可能优化图像
  • 检查所有链接(AJAX、JS)时遇到错误(类似于500404),以便有更多的时间加载视图
    在视图、模型和控制器中放置其他基准点,以进一步细分。这将帮助您更好地了解每个部分正在做什么

    $this->benchmark->mark('my_controller_start')

    $this->benchmark->mark('my_controller_end')

    另外,为了使您的查询速度稍快,不要执行select*,只从表中获取您需要的数据,除非您完全需要所有内容,然后继续选择*

    例如,选择id、姓名、电子邮件

    此外,如果要将15000个结果返回到视图,则应尝试CI分页以分块返回结果


    在视图、模型和控制器中放置额外的基准点,以进一步细分。这将帮助您更好地了解每个部分正在做什么

    $this->benchmark->mark('my_controller_start')

    $this->benchmark->mark('my_controller_end')

    另外,为了使您的查询速度稍快,不要执行select*,只从表中获取您需要的数据,除非您完全需要所有内容,然后继续选择*

    例如,选择id、姓名、电子邮件

    此外,如果要将15000个结果返回到视图,则应尝试CI分页以分块返回结果



    检查您的控制台,查看脚本、其他js、css和图像加载time@ShafiqulIslam他们花费的时间太少了,大约10分钟。您是否显示了代码?是否使用分页?@hrishi我正在使用DataTable()插件加载到表中。没有这个视图也太慢了检查你的控制台以查看脚本、其他js、css和图像加载time@ShafiqulIslam他们花费的时间太少了,大约10分钟。您是否显示了代码?是否使用分页?@hrishi我正在使用DataTable()插件加载到表中。如果没有这个也太慢了使用上面所有的提示那么什么是客户视图?这是一个mvc视图加载没有这个页面的视图并选中复选框它很快使用上面所有的提示那么什么是客户视图?这是一个mvc视图加载没有这个页面的视图并选中复选框它很快我尝试了基准测试,查看只占用更多时间,对于分页,我使用jquery DataTable()插件。我尝试了基准测试,查看只占用更多时间,对于分页,我使用jquery DataTable()插件。。