有时候会用readfile 直接读取并在浏览器上输出,但效率怎么样呢?
我测试的是600个图片同时用readfile来读取,在同一页面上显示,
结果php-cgi.exe进程大量增加,图片打开很慢,同服务器其他PHP程序打不开,
因为一张图片的读取和传输的时间远远大于一个普通页面,这样PHP进程很长时间不能释放,
造成大量php-cgi.exe生成,我最高生成200多个这样的进程。
结论:
如果需要一次性或者网站访问量过大,尽量不要用PHP来读取图片,一般服务器承受不起
如果必须要用PHP输出图片,请加个304状态的判断,这样可以减轻同一客户端对同一图片访问的压力。