Tasking? A fluid user experience with Uploading Media.

15 views
Skip to first unread message

JJ Zolper

unread,
Jul 13, 2012, 9:01:29 PM7/13/12
to django...@googlegroups.com
Hello everyone,

So I'm pretty new to trying to develop a way to manage tasking. What do I mean tasking? Well here is an example:

Let's say I want for part of my website for people to be able to create an account and and fill in a lot of fields of data but also 
to be able to upload files. For example lets say I want them to be able to upload music files to my site and organize them, etc.
I don't want to load the server down to the point where it crashes or anything so I want this uploading of files to be tasked
and somewhat in the background.

I've heard of things like RabbitMQ or Redis and other various things like Celery but I really would like some brilliant advice
from the community of django as to any ideas about how to go about this. Think of my need like youtube you are uploading a video
but at the same time you can edit fields of information about that video or other various things. Except for me there could be much more than just that.
A new user could be uploading media/music files or something at the same time as uploading a video of themselves. I want it to be efficient and fast
to the point where it all gets updated but the user can leave this task going and leave the page that is updating the file and just check back in and 
see a status. In my programming mind this sounds like asynchronous tasking of some sort. With little experience in this realm I could use
some help. Any ideas about allow a fluent and fluid setup for my problem to solve would be great.

I'm looking for a logical, efficient but also fairly fast way to go about trying to head up these tasks to allow for a good user experience.

Thanks for your time,

JJ Zolper

Tomas Neme

unread,
Jul 14, 2012, 11:26:38 AM7/14/12
to django...@googlegroups.com
Well, first of all, you're gonna have to set up quite a big amount of
parallel connections for this to work,

> A new user could be uploading media/music files or something at the same
> time as uploading a video of themselves. I want it to be efficient and fast
> to the point where it all gets updated but the user can leave this task
> going and leave the page that is updating the file and just check back in

Well, this whole part, I don't see happening, because you need to have
some application on the client side sending the data, this is usually
the browser, which unless it stays on the sending page, will close all
outstanding connections to your server. You'd need a client-side
application for something like this to work, like Picasa and Dropbox
do. I also would recommend against letting users upload more than one
file at any given time, because multiple files per client means
multiple connections. Of course, you could add a "send file" link that
actually only adds stuff to a queue, but again, this will always
depend on the browser page not being closed, or changed, not even
refreshed, I've seen this worked-around with popups (have the popup
window handle the connection, so the user can keep browsing on his
main window, but he cannot close the popup, in that case).

As for the actual solution tools for your problem, I don't know them,
but I do know enough to just mark that thing up there

--
"The whole of Japan is pure invention. There is no such country, there
are no such people" --Oscar Wilde

|_|0|_|
|_|_|0|
|0|0|0|

(\__/)
(='.'=)This is Bunny. Copy and paste bunny
(")_(") to help him gain world domination.
Reply all
Reply to author
Forward
0 new messages