【发布时间】:2013-07-26 17:55:43
【问题描述】:
一个非常菜鸟的问题:php file_exists($path) 是否检查$path 的子目录?
它是磁盘读取密集型进程吗?这意味着它是否会根据要检查的目录中的文件夹/文件的数量线性增加(多项式/指数)?
背景信息:我正在 EC2 上运行一些文件操作脚本,自从我启动脚本以来,我的读取操作数一直呈指数增长。 AWS 对每百万个 I/O 请求收取 0.11 美元的费用,而且成本正在迅速增加:(。
我分析了代码,我认为唯一可能导致这种不断增加的性能损失问题的部分是脚本检查文件是否存在或从 S3 存储桶下载文件的部分,因为几乎所有其他内容都是计算/write 或一个小的读取操作。如果有任何相关性,我有成千上万个 3-5 MB 的文件。在每个循环之后,脚本会生成更多类似大小的文件等。
编辑:更正以澄清 Jim 的观点
编辑 2: 我要询问的性能不是脚本运行的时间,而是磁盘读取次数,因为这由 AWS 单独收费。
【问题讨论】:
标签: php performance io amazon-ec2