Performance 在现代web应用程序中显示性能指标?

Performance 在现代web应用程序中显示性能指标?,performance,model-view-controller,Performance,Model View Controller,我们正在更新古老的内部PHP应用程序。现在,我们在每个页面视图上收集广泛的性能度量,并将它们记录到数据库中。此外,用户要求在页面底部显示一些指标。这对我们来说效果很好,因为应用程序对每个请求所做的最后一件事就是包含包含HTML页脚的文件。页脚代码调用函数将性能指标记录到数据库中,并将其返回以包含在用户的输出中 应用程序的更新部分使用MVC框架和分派/请求/响应循环。页脚不再是最后一件事。事实上,这很可能是在创建页面其余部分之前完成的第一件事 因为我们可以在响应返回给用户之前获取响应,所以我们可以

我们正在更新古老的内部PHP应用程序。现在,我们在每个页面视图上收集广泛的性能度量,并将它们记录到数据库中。此外,用户要求在页面底部显示一些指标。这对我们来说效果很好,因为应用程序对每个请求所做的最后一件事就是包含包含HTML页脚的文件。页脚代码调用函数将性能指标记录到数据库中,并将其返回以包含在用户的输出中

应用程序的更新部分使用MVC框架和分派/请求/响应循环。页脚不再是最后一件事。事实上,这很可能是在创建页面其余部分之前完成的第一件事

因为我们可以在响应返回给用户之前获取响应,所以我们可以尝试在页脚中包含性能指标的占位符,并简单地用实际数字替换它们,但不知何故,这让我觉得是个坏主意


在你的现代网络应用程序中,你是如何处理这个问题的?当我们使用PHP时,我很好奇Ruby/Rails应用程序和您最喜欢的Python框架是如何实现的。

在Zend framework for PHP中,我们重载了
postDispatch()
,其中我们附加了一个调用收集最终指标的助手的部分(至少我相信这就是我们的实现方式)。另一种方法是重载Zend Framework响应对象,将其附加到
render
操作之后

RoR具有相同的能力(重载渲染的每个步骤),我相信大多数MVC框架也会。值得注意的是,我记得CodIgniter在开发模式下有自动调试信息,它应该是一个简单的情况,即找到渲染的位置并模拟它


祝你好运。

在Zend Framework for PHP中,我们重载了
postDispatch()
,在这里我们附加了一个部分,它调用一个收集最终指标的助手(至少我相信我们就是这样做的)。另一种方法是重载Zend Framework响应对象,将其附加到
render
操作之后

RoR具有相同的能力(重载渲染的每个步骤),我相信大多数MVC框架也会。值得注意的是,我记得CodIgniter在开发模式下有自动调试信息,它应该是一个简单的情况,即找到渲染的位置并模拟它


祝你好运。

我得看看CodeIgniter的做法。我们的“框架”是自主开发的,现在可能总共有几十行。我必须看看CodeIgniter的方法。我们的“框架”是自主开发的,现在大概总共有几十行。