This is more of a deployment/design question than specifically
about Django but its done within the content of a Django-based
application framework.

    I'm developing a general http-based file server whose access is
controled by a custom authentication&authorization system I have
developed and can modify as needed. The goal is to be able to publish
a unique uri for a file that can be accessed via a web page, ensure
that the user is authenticated and permissioned for that uri, then let
them download the file. The files will be stored on a general
filesystem (probably on a large SAN array but I appreciate advice on
alternatives that can be shared by multiple servers). The
permissioning (done as a django app) is a great deal more flexible
(and complex) than what linux can reasonably offer so I can't allow
the uri's to simply go straight to the file without being checked for
authorization by my software but I want to be as scalable as possible
(by simply adding additional application/file servers as needed) and
be able to leverage high-performance http content transfers via
Apache, Tux, or something along those lines. So my questions become:

1. What's the current best practice/preferred web server for serving
lots of static content (upload and download) quickly and efficiently?
Is Tux the way to go?

2. I understand that most static content servers get a lot of their
speed because they can't handle dynamic content. How do I ensure they
will properly call the authentication&authorization system before
starting the download/upload?

3. If 2 isn't reasonably doable, does it make sense to front static
content servers with "pass thru" servers that enforce the permissions
or does that give up most of the performance advantage of the static
servers in the first place?

4. How do the big guys do this? This is an internal service we're
developing but we anticipate serving terabytes of content shortly
after it's deployed. We need horizontal scalability but permissioning
is critical because of the nature of the content (lots of financial
and private customer content).

    In this case we are wlling to spend some extra money to get the
best performance. So I need to understand my options before completing
the software design. I am implementing this in an SOA manner under
linux and the programming languages will be python & C++ (+ anything
else that we determine is the best tool for the job if needed).
Everything will be hosted in our own private data center so we have
complete control of its layout, security, and deployment. Appreciate
any recommendations or advice of any dangers/ risks to watch out for.

    thanx,

        -- Ben


--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Django users" group.
To post to this group, send email to django-users@googlegroups.com
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/django-users?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to