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 -~----------~----~----~----~------~----~------~--~---