这对我很有意思,我已经检查过了.正如您所读,NewRequest订阅者在每个请求上被调用3次(或者在启用debug_toolbar的BeforeRender情况下调用7次...),而每个请求调用一次订阅者(在启用debug_toolbar的情况下调用> 30次).
所以,如果我想通过事件将mongodb连接到我的项目NewRequest,每个请求将完成3次...
这是为什么?服务器为什么要在每个请求上执行相同的工作3次?
提前致谢!!!
金字塔NewRequest每次请求不会多次调用.这种情况发生的唯一原因是,如果您不小心多次注册您的订户.人们认为多次调用它的另一个常见原因是浏览器通常使用favicon请求跟踪请求,但这只会占2次调用.你可以更多地显示任何输出或描述你的问题,以使我确信订阅者真的被多次调用吗?
BeforeRender将被多次调用(每个模板渲染一次).当启用调试工具栏时,每个请求都会呈现很多东西,但即便如此,30个声音更像是我期望的3倍.
通常,连接到NewRequest订户中的数据库并不是一个好主意,因为该订户也会被调用静态资源(字面上所有请求).更好的模式是request通过对象创建惰性/具体化属性config.set_request_property.这将在您第一次在每个请求中使用数据库时连接,并且在您不这样做时不会影响性能.
| 归档时间: |
|
| 查看次数: |
368 次 |
| 最近记录: |