上传文件时,服务器上CPU使用率过高的原因是什么?

当我尝试上传一个巨大的文件大小(大约2GB),服务器的CPU使用率非常高。 我该怎么办才能解决这个问题?

我只是使用标准的HTML表单和PHPfile upload。

如果我在错误的论坛上发帖,我很抱歉。 请指向正确的方向

这里是上传命令的结果,上传4个文件(18mb,38mb,60mb,33mb)

1904 apache 20 0 33504 5740 1952 R 28.3 0.2 0:02.19 httpd 1905 apache 20 0 33504 5740 1952 R 28.3 0.2 0:01.99 httpd 1903 apache 20 0 33232 6968 3060 R 28.0 0.2 0:01.98 httpd 1910 apache 20 0 33240 6020 2248 S 11.5 0.2 0:02.85 httpd 2133 root 20 0 2656 1124 896 R 1.6 0.0 0:00.71 top 1 root 20 0 2864 1404 1188 S 0.0 0.0 0:03.99 init 

尽pipe我不使用这个代码(只是简单的file upload),但它仍然会导致很高的CPU使用率

  function sendRequest() { //clean the screen //bars.innerHTML = ''; var file = document.getElementById('fileToUpload'); for(var i = 0; i < file.files.length; i++) { var blob = file.files[i]; var originalFileName = blob.name; var filePart = 0 const BYTES_PER_CHUNK = 100 * 1024 * 1024; // 10MB chunk sizes. var realFileSize = blob.size; var start = 0; var end = BYTES_PER_CHUNK; totalChunks = Math.ceil(realFileSize / BYTES_PER_CHUNK); alert(realFileSize); while( start < realFileSize ) { if (blob.webkitSlice) { //for Google Chrome var chunk = blob.webkitSlice(start, end); } else if (blob.mozSlice) { //for Mozilla Firefox var chunk = blob.mozSlice(start, end); } uploadFile(chunk, originalFileName, filePart, totalChunks, i); filePart++; start = end; end = start + BYTES_PER_CHUNK; } } } 

如果你正在做许多文件操作,这是有道理的。 你应该发布文件拆分操作的一些代码。