On Mon, Feb 02, 2009 at 06:12:33PM -0800, Marek Szuba wrote: -> On Sat, 31 Jan 2009 07:20:57 -0800 (PST) -> Istvan Albert <[email protected]> wrote: -> -> > I recall a post by Titus on this from some time ago, here it is: -> > http://advogato.org/person/titus/diary/370.html -> I've seen the recipe he mentions in that post, indeed it was the first -> one I have come across. There is nothing wrong with it, one should -> however keep in mind the following: -> -> - it isn't threaded, meaning that only one client connection can be -> handled at a time;
I think this can be addressed by making it multithreaded with the SocketServer.ThreadingMixIn, yes? Although threading adds in a big heap o' problems... pygr.Data is probably not threadsafe, right, Chris? -> - it only handles SSL connections, meaning a separate, different server -> has to be launched to handle non-SSL ones; If it's important to provide a non-HTTPS connection, we can run two servers at once, in different threads. This does mean that each served function needs to synchronize data access appropriately -- which is going to be an issue in *any* threaded server. Authentication and privileged functions can then be limited to the HTTPS server. -> - it doesn't support authentication, which we will need (along with -> the possibility of either specifying methods that can only be called -> after successful authentication, or a more complex access-control -> system). XML-RPC as a protocol doesn't support authentication AFAIK, and it's based on HTTP, which is stateless, so you can't simply authenticate the connection. I dealt with this in one of my projects by simply serving an auth cookie with any privileged function. -> All that brings me back to the question from my previous e-mail, that -> is - whether we should start with backward compatibility and build on -> top of that or start with a list of requirements and build down. I guess I'm in favor of a conservative and boring approach which is to add these things as we need them & only redesign if it causes problems :) cheers, --titus -- C. Titus Brown, [email protected] --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "pygr-dev" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/pygr-dev?hl=en -~----------~----~----~----~------~----~------~--~---
