主题:  无意发现一个严重问题,高手进,关于无组件上传

icerain

职务:普通成员
等级:1
金币:1.0
发贴:249
#12005/10/17 1:36:12
今天在做上传程序的时候发现一个巨大问题:

我一直用的无组件上传程序(稻香老农制作 www.5xSoft.com/ )
当我测试 判断文件不能超过设定大小好不好用的时候
发现一严重问题

如果我选定的文件过于太大,比如10M甚至更大
我无意中发现CPU使用率满(我的是P4 3.0E,因为是超线程的所以使用率为50%),
过了几分钟后才判断出文件太大而不能上传

然后我随便试了一个论坛(啥名忘了)的上传程序,
结果CPU使用率偏高(10-20%),而物理内存使用率基本是满的

如果有人恶意去用,那服务器还不得瘫痪啊!

能不能写个javascript先在客户端判断大小,然后再由服务器判断,这样会避免一部分



icerain

职务:普通成员
等级:1
金币:1.0
发贴:249
#22005/10/17 1:58:55
我刚才又下了一个动网7.0版的论坛

上传大文件时:CPU 内存占用基本是满的

是不是无组件上传都有这个问题



janlay

职务:管理员
等级:7
金币:28.0
发贴:7244
#32005/10/17 9:04:03
修改 IIS6 的配置文件(%systemroot%\system32\inesrv\metabase.xml) 可以让 IIS 截断多余的数据。

查找并修改这一项:ASPMaxRequestEntityAllowed, 单位为字节。



浮尘

职务:普通成员
等级:3
金币:7.0
发贴:1258
#42005/10/17 10:52:05
对于图片,能事先通过JS判断出文件的大小,其他的文件没试过。



icerain

职务:普通成员
等级:1
金币:1.0
发贴:249
#52005/10/17 14:25:09
三楼的朋友,你说修改那个东西,意思是IIS接收到设定数据大小后就不再接收了吗?

我网站可以上传GIF JPG MP3 WMA 4种文件, MP3 WMA最大限制为8M左右,

也就是说IIS限制8388608字节?

服务器在接收这8M数据的时候资源占用也是满的,其实传小文件的时候资源占用也是满的,只是时间短,几秒就OK了,

请问用组件上传会不会这样?

4楼的朋友你能给我一个用JS在客户端判断文件大小的例子吗?