On Aug 29, 11:51 am, "Jeremy Dunck" <[EMAIL PROTECTED]> wrote: > On 8/28/07, Graham Dumpleton <[EMAIL PROTECTED]> wrote: > ... > > > Most importantly, you should rigorously test your application to > > ensure that it is truly safe to use in a multithreaded web server. > > Areas which I would suggest you look at closely are use of session > > objects as these from memory do not provide a locking mechanism, and > > so in an AJAX heavy application which issues lots of concurrent > > requests and each handler for them wants to manipulate the same > > session object, you might run into problems with the handlers and > > sequencing of operations against the session object. > > If your session usage follows this pattern, I'd recommend using > something like PEAR:http://cheeseshop.python.org/pypi/pear/ > > It would not be difficult to modify django to support alternative > session backends, similar to its cache and db abstractions.
I should point out that this issue with sessions if applicable, isn't actually restricted to a multithreaded server. Technically it could occur with a multiprocess server as well, it just may be easier to trigger a problem when a multithreaded server is used. This issue with sessions previously came up in: http://groups.google.com/group/django-users/browse_frm/thread/a7d42475b66530bd I don't know if there was any subsequent work on Django to look at how big a problem if any this is. Anyway, what was important in what I was saying was not so much the session issue, but that you should just test your system thoroughly to make sure there aren't any problems in general if using a multithreaded server. Graham --~--~---------~--~----~------------~-------~--~----~ 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 -~----------~----~----~----~------~----~------~--~---