什么是模板阅读更昂贵:数据库查询或文件读取?

Tom*_*lde 4 php mysql templates file

我的问题很简单; 我需要读出一些模板(在PHP中)并将它们发送到客户端.

对于这种数据,特别是text/html和text/javascript; 从MySQL数据库或文件中读取它们是否更昂贵?

亲切的问候
汤姆

inb4安全; 我意识到.

PS:我读过有关类似问题的其他主题,但要么与其他类型的数据有关,要么没有得到回答.

Dan*_*man 6

从数据库中读取更加昂贵,毫无疑问.

平面文件在哪里?在文件系统上.在最好的情况下,它们最近被访问过,因此操作系统已将文件缓存在内存中,它只是一个内存读取,可以将它们放入PHP程序发送给客户端.在最坏的情况下,操作系统必须在程序可以使用之前将文件从光盘复制到内存.

数据库中的数据存在于何处?在文件系统上.在最好的情况下,它们最近被访问过,因此MySQL在内存中有该表.但是,你的程序无法直接获取该内存,它需要先与服务器建立连接,来回发送认证数据,发送查询,MySQL必须解析并执行查询,然后从内存中获取行并将其发送到您的程序.在最坏的情况下,操作系统必须从磁盘上的数据库表文件复制到内存,然后才能获得要发送的行.

正如您所看到的,这些场景几乎完全相同,只是在将数据从内存或磁盘中取出之前,使用数据库会涉及连接和查询的额外开销.