繁体   English   中英

Kohana控制器设置异常缓慢

[英]Kohana Controller Setup unexpectly slow

我是一位经验丰富的PHP开发人员,是kohana的新手。

我已经使用Kohana建立了一个网站,但是将其上传到服务器后,发现“ Controller Setup”部分异常缓慢,耗时12秒,而其他耗时不到0.5s,

Kohana Loading  0.014   1   0.49MB
Environment Setup   0.004   1   0.05MB
System Initialization   0.007   1   0.14MB
Controller Setup    12.058  1   1.42MB
ReflectionClass >newInstance()  12.054  1   1.35MB
Controller Execution    0.036   1   0.25MB
Total Execution 12.117  1   2.30MB

通过深入研究Kohana核心,我发现ReflectionClass> newInstance()引起了问题

但是不确定我应该从这里去哪里。 :(

请帮助。 谢谢


我已经更深入地研究了自己的代码,看起来像是Session :: instance()谁引起了问题。 会话:: instance()12.032 1 1.03MB


在跟踪问题之后,我将会话驱动程序更改为缓存,并将缓存更改为内存缓存。 但是没有太大的改善。 所以我打开了session.php,找到了这个。

     /**
     * Singleton instance of Session.
     */
    public static function instance()
    {
        if (Session::$instance == NULL)
        {
            // Create a new instance
            new Session;
        }

        return Session::$instance;
    }

->“新会议;”!

我看不到这一点。 我看了其他的类,它写成return new xxx;

就像在DocBlock中说的那样,Session类使用的是Singleton模式 Singleton模式可确保在任何给定时间只有一个类的实例。 您显示的代码没有做任何特殊的事情。 这是该模式的标准实现。 我非常怀疑这是罪魁祸首。 如果有的话,您必须查看Session::__construct

更好的方法是使用Xdebug来分析应用程序并获取执行流程详细列表 这将使我们花更多的时间来了解更多。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM