[Zope] Asynchronous dtml?

albert boulanger aboulang@ldeo.columbia.edu
Sun, 1 Jul 2001 09:08:45 -0400 (EDT)


   its possible to write async dtml method without spawning a new thread by 
   integrating with asyncore. although its tricky you can still get transaction 
   integrity by having by having a before async call transaction and another 
   transaction when the method returns (it will probably get serviced by another 
   thread).

   except for some really extreme cases this is not nesc and normally the 
   problem is better solved by other means.

   one case that does come to mind, is when you have potentially long external 
   interaction with foriegn servers.

   if anyone's interested in some sample code, feel free to email me.


I have been working on portals like my.yahoo.com recently that rely on
foriegn servers to provide portal content so this is a good use case I
think. Non only do you need to do this but you also need to time out
any souce that does not respond in say 10 secs, else the time to build
the mypage is intolerable.

Plumtree has been advertising as "massively parallel" by which they mean
they doe this data source gathering in parallel.

In fact I have used Zope as a gadget server for Plumtree and one show
stopper is the fact that Zope itself will hang up when I have been
using ZGDChart with either the ZmxODBC or ZODBC database connectors on
a Win2K box when a database connection goes down.  ZmxODBC behaves
somewhat better but utimately with enough hits Zope hangs up. I simply
had to not use this gadget I made.



Regards,
Albert Boulanger
aboulanger@vpatch.com