假设,我将要从深层嵌套的目录层次结构中包含一些页面:
require '/path/to/project/views/forms/member/login/submit.php'
我从操作系统课程中了解到:每次我们想要访问/搜索文件时:读取路径的每个目录中的inode
(在unix系统中)以查找文件。那么,由于这种包容性,它是否也会影响性能?
很抱歉,如果我没有说清楚。
答案 0 :(得分:2)
没有。就性能问题而言,这个问题很容易被忽视。
答案 1 :(得分:2)
根据大多数计算机的当前处理速度,在深层嵌套目录中读取文件所花费的时间是微不足道的。你甚至都不会注意到它。
答案 2 :(得分:1)
第一次遍历目录路径时会出现命中。之后,stat()数据被缓存,开销变得最小。如果/当有问题的目录被推出统计缓存并且必须从磁盘重新读取数据时,只会有更大的打击。
即使这样,命中也很小。考虑到Apache必须为服务器上的每次点击执行完全相同类型的操作,以及查找/ load + parse .htaccess文件等等。
答案 3 :(得分:0)
很高兴您将在操作系统课程中学到的知识应用到Web应用程序中,但这通常不会对您有所帮助。操作系统认为“性能损失”与通过网络与用户进行通信的应用程序很可能使用数据库的级别截然不同。在一个操作系统中,计算微秒的基准测试是该课程的标准,一个网络应用程序可能会真正关注毫秒到十毫秒的范围。削减几十微秒甚至无法通过互联网进行测量。是的,我知道xhprof显示微秒,但这不会改变任何东西。