title: S3 file upload stream using node js
body: <p>I am trying to find some solution to stream file on amazon S3 using node js server with requirements:</p>
  
  <ul>
  <li>Don't store temp file on server or in memory. But up-to some limit not complete file, buffering can be used for uploading. </li>
  <li>No restriction on uploaded file size.</li>
  <li>Don't freeze server till complete file upload because in case of heavy file upload other request's waiting time will unexpectedly
  increase.</li>
  </ul>
  
  <p>I don't want to use direct file upload from browser because S3 credentials needs to share in that case. One more reason to upload file from node js server is that some authentication may also needs to apply before uploading file.</p>
  
  <p>I tried to achieve this using node-multiparty. But it was not working as expecting. You can see my solution and issue at <a href="https://github.com/andrewrk/node-multiparty/issues/49" rel="noreferrer">https://github.com/andrewrk/node-multiparty/issues/49</a>. It works fine for small files but fails for file of size 15MB.</p>
  
  <p>Any solution or alternative ?</p>