Mega Upload 2
It's been an year since the last release on the Mega Upload PHP branch. The project itself is nearly two and a half years old and now used at over a 100,000 thousands websites.
Over the past year, there have been few contributions coming in, unfortunately due to various other commitments I never had the chance to release any of them. Most of the contribs were attempts to rewrite the progress monitor with AJAX.
I am uncertain about the advantage of doing so. True that using AJAX would mean that the progress monitor does not have to refresh frequently, but what advantages is there in it? In reality XMLHttpRequest does result in another request being sent to the server. So the load and the number of hits on the server remain unchanged.
It is possible that I may change my mind about AJAX. I might just find the time to make another release of megaupload with an AJAX monitor. Right now the effort is on building a C version of Mega Upload, this is something that has been continously put off for over 2 years.
Currently Mega upload works by getting perl to accept the file upload and write information to the disk, which is then read by the progress monitor. After the upload completes handling is passed back to your PHP script.
The only catch is that perl isn't that great when it comes to reading streaming data (PHP on the other hand is terrible). C would be ideal but parsing a multipart form post with C isn't something for the faint hearted or lazy.