PHP:包含一个来自深度嵌套目录层次结构的页面-性能问题


PHP: Including a page from deeply nested directory hierarchy - performance issue

假设,我要包含一些来自深嵌套目录层次结构的页面:

require '/path/to/project/views/forms/member/login/submit.php'

我从操作系统课程中了解到:每次我们要访问/搜索文件时:读取路径中每个目录的inode(在unix系统中)以定位文件。那么,由于这种包含,它也会影响性能吗?

对不起,如果我没有说清楚。

No。就性能问题而言,这一点微不足道,可以忽略。

根据大多数计算机当前的处理速度,读取深嵌套目录中的文件所花费的时间是微不足道的。你甚至不会注意到它

第一次遍历目录路径时会有一个命中。之后,stat()数据被缓存,开销变得最小。只有当有问题的目录被推出stat缓存并且必须从磁盘重新读取数据时,才会有更大的打击。

即使这样,撞击也是很小的。考虑到Apache必须对服务器上的每个命中执行完全相同类型的操作,以及查找/load+parse .htaccess文件和诸如此类的操作。

你试图将你在操作系统课程中学到的东西应用到web应用程序中是很好的,但通常情况下它不会有帮助。操作系统认为的"性能损失"级别与应用程序通过网络与用户通信(很可能使用数据库)的级别是完全不同的。在操作系统中,计算微秒的基准测试是正常的,web应用程序可能会关注毫秒到10毫秒的范围。在互联网上甚至无法测量到缩短的几个10微秒。是的,我知道xhprof显示微秒,但这不会改变任何东西。