Hi Nifras, >>We need to speed up the image kind of upload in faster manner. I do not quite understand what is the slowness, perhaps you might have seen some interesting behaviour.
As for my understanding, the most efficient upload is the stream based upload. Upload single large file as single stream - cost less processing, - less bandwidth, - less memory in both client and server, - less negotiations in application layer. We can speedup upload time when it comes to uploading multiple files simultaneously with different connections. Thus is something image sharing sites do. If you thinking in line of download accelerators or torrents being faster, I would not agree. They really consume far more bandwidth and cpu/memory resources either in server side or client side. Just compare any of the accelerator/torrent client with simple wget command. Cheers, Ruwan On Sun, Sep 20, 2015 at 7:09 PM, NIFRAS ISMAIL <[email protected]> wrote: > Hi Sajith, > Yes, There are lots of issues behind the seen. So uploading image in > binary and put in a folder is the good way up to now. But Still I am not > satisfy that method. We need to speed up the image kind of upload in faster > manner. > > I have some abstracts. > why can't we split the images into small set of chunks and upload in > parallel way? If there is a efficient machanism available to split the > images into small chunks and join the server its very much useful for any > size of image uploads. > > Thank you for the great dig on base64 encoding. > > Nifras Ismail > > Regards. > *M. Nifras Ismail* > [image: LinkedIn] <http://lk.linkedin.com/pub/nifras-ismail/54/343/94b> > > > > On Fri, Sep 18, 2015 at 10:40 PM, Sajith Ariyarathna <[email protected]> > wrote: > >> Hi Nifras, >> >> Uploading base64 encoded string rather than the binary file has some >> disadvantages. >> >> - Encoding to base64 is not a light-weight task. Especially for >> mobile devices it can be very painful. Also for large files, web browser >> might freeze or even crash [1]. >> - Usually base64 encoded string is larger than its binary file about >> 33% [2] [3]. So uploading base64 encoded string consumes more bandwidth >> than uploading the binary file. >> - In the server-side, reading a file as a base64 encoded string loads >> the whole file to the memory (RAM) once which is a bad practice. But if >> you >> upload a binary file, then you can get a file stream to that ( >> uploadedFile.getStream()) and can read the file from that stream >> safely. >> - Web browsers are optimized to handle uploading large files, but not >> base64 strings. >> >> >> I also took the liberty to answer your StackOverflow question [4]. >> >> [1] >> http://stackoverflow.com/questions/16761927/aw-snap-when-data-uri-is-too-large >> [2] >> http://stackoverflow.com/questions/16331215/can-i-make-image-upload-faster-using-base64-encoding-in-android >> [3] >> http://davidbcalhoun.com/2011/when-to-base64-encode-images-and-when-not-to/ >> [4] http://stackoverflow.com/a/32657419/1577286 >> >> Thanks. >> >> On Fri, Sep 18, 2015 at 7:37 PM, NIFRAS ISMAIL <[email protected]> >> wrote: >> >>> Ya sajith, but in my assumption if we convert the image into base64 >>> encoding and post as string is take some how efficient way for direct image >>> upload rather than file upload. >>> >>> Does this make any seance? >>> On Sep 18, 2015 10:40 AM, "Sajith Ariyarathna" <[email protected]> >>> wrote: >>> >>>> Hi Nifras, >>>> >>>> You can get multiple uploaded-files inside your Jaggery code using >>>> request.getAllFiles() function. e.g. >>>> >>>> var files = request.getAllFiles(); // returns <name, File> map >>>> for(var name in files) { >>>> >>>> if(files.hasOwnProperty(name)) { >>>> >>>> var file = files[name]; >>>> >>>> // do something with file >>>> >>>> } >>>> >>>> } >>>> >>>> >>>> Thanks. >>>> >>>> On Fri, Sep 18, 2015 at 7:08 AM, NIFRAS ISMAIL <[email protected]> >>>> wrote: >>>> >>>>> Hi Sajith, >>>>> Thank you for the guide. >>>>> So we can add multiple files upload from this stream. >>>>> >>>>> Regards. >>>>> *M. Nifras Ismail* >>>>> [image: LinkedIn] >>>>> <http://lk.linkedin.com/pub/nifras-ismail/54/343/94b> >>>>> >>>>> >>>>> >>>>> On Fri, Sep 18, 2015 at 12:32 AM, Sajith Ariyarathna < >>>>> [email protected]> wrote: >>>>> >>>>>> Hi Nifras, >>>>>> >>>>>> request.getFile("myFile") does not represent a physical file, rather >>>>>> it represent a stream to the uploaded file. Hence you cannot "move" it >>>>>> using .move("...") function. If you want to save the uploaded file, >>>>>> then use the following code snippet. >>>>>> >>>>>> var uploadedFile = request.getFile("myFile"); >>>>>> var savedFile = new File("/path/to/save/location/" + >>>>>> uploadedFile.getName()); >>>>>> savedFile.open('w'); >>>>>> savedFile.write(uploadedFile.getStream()); >>>>>> savedFile.close(); >>>>>> >>>>>> >>>>>> Thanks. >>>>>> >>>>>> On Thu, Sep 10, 2015 at 2:41 PM, NIFRAS ISMAIL < >>>>>> [email protected]> wrote: >>>>>> >>>>>>> Hi All, >>>>>>> Do we upload images to the server directly using Jaggery JS? >>>>>>> http://stackoverflow.com/a/32497617/2672566 >>>>>>> >>>>>>> Regards. >>>>>>> *M. Nifras Ismail* >>>>>>> [image: LinkedIn] >>>>>>> <http://lk.linkedin.com/pub/nifras-ismail/54/343/94b> >>>>>>> >>>>>>> >>>>>>> >>>>>>> _______________________________________________ >>>>>>> Dev mailing list >>>>>>> [email protected] >>>>>>> http://wso2.org/cgi-bin/mailman/listinfo/dev >>>>>>> >>>>>>> >>>>>> >>>>>> >>>>>> -- >>>>>> Sajith Ariyarathna >>>>>> Software Engineer; WSO2, Inc.; http://wso2.com/ >>>>>> mobile: +94 77 6602284, +94 71 3951048 >>>>>> >>>>> >>>>> >>>> >>>> >>>> -- >>>> Sajith Ariyarathna >>>> Software Engineer; WSO2, Inc.; http://wso2.com/ >>>> mobile: +94 77 6602284, +94 71 3951048 >>>> >>> >> >> >> -- >> Sajith Ariyarathna >> Software Engineer; WSO2, Inc.; http://wso2.com/ >> mobile: +94 77 6602284, +94 71 3951048 >> > > > _______________________________________________ > Dev mailing list > [email protected] > http://wso2.org/cgi-bin/mailman/listinfo/dev > > -- *Ruwan Abeykoon* *Architect,* *WSO2, Inc. http://wso2.com <http://wso2.com/> * *lean.enterprise.middleware.* email: [email protected]
_______________________________________________ Dev mailing list [email protected] http://wso2.org/cgi-bin/mailman/listinfo/dev
