Re: [Zope-dev] A modest proposal: Replace medusa with Twisted
kapil thangavelu wrote: twisted is GPL and zope is not gpl compatible and that does not appear to be changing despite some mention from zc about trying to achieve compatiblity. Twisted is LGPL, and it might be possible to license it under something that will work with ZPL. I don't think this will be an issue if it comes to it. ___ Zope-Dev maillist - [EMAIL PROTECTED] http://lists.zope.org/mailman/listinfo/zope-dev ** No cross posts or HTML encoding! ** (Related lists - http://lists.zope.org/mailman/listinfo/zope-announce http://lists.zope.org/mailman/listinfo/zope )
Re: [Zope-dev] A modest proposal: Replace medusa with Twisted
There is another approach however for getting Java and Zope together A few weeks back I was mucking around with the Python Java Extension (see Python 9 proceedings) and was able to interact with Java classes/instances directly from Zope by calling ExternalMethods. PJE basically allows the Java vm to be loaded into the python interpreter. Tim I can speak about this one... The difficult part of getting Zope to w ork on Java, IMHO, is not the server. Without too terribly much work, I think you could get a servlet in front of Zope (once you've taken care of all of the other things). We've made some progress toward getting Zope running on Java (http://www.phabric.org). The past few weeks, phabric has been on the back burner at Web Elite because of unrelated paying work. There are two main areas of work in getting Zope on top of Java: the C modules and differences between C Python and Jython. We've made quite a bit of progress in both of those areas, but there's still more to be done before Zope will fire up and answer a request. Kevin Tim Hoffman Zute Pty Ltd mobile: 0411 06 fax:+61 8 6210 1883 email: [EMAIL PROTECTED] ___ Zope-Dev maillist - [EMAIL PROTECTED] http://lists.zope.org/mailman/listinfo/zope-dev ** No cross posts or HTML encoding! ** (Related lists - http://lists.zope.org/mailman/listinfo/zope-announce http://lists.zope.org/mailman/listinfo/zope )
Re: [Zope-dev] A modest proposal: Replace medusa with Twisted
Been there, done that. JPE (as it was originally known, Java Python Extensions), has a fatal flaw, at most one JVM can be attached to a Python script at any one time, this single instance attaches itself to a single thread, and is not available in any other thread. I've had this working with Zope, even serving pages with Java stuff creating the content, but only intermittently. When Zope serves from the thread with the JVM attached everything is great, as soon as the thread changes, all hell breaks loose. That said, I think JPE/PJE is the best way forward, but this problem needs to be solved (if it hasn't already). Phil - Original Message - From: Tim Hoffman [EMAIL PROTECTED] To: [EMAIL PROTECTED]; [EMAIL PROTECTED] Sent: Thursday, October 11, 2001 4:32 PM Subject: Re: [Zope-dev] A modest proposal: Replace medusa with Twisted There is another approach however for getting Java and Zope together A few weeks back I was mucking around with the Python Java Extension (see Python 9 proceedings) and was able to interact with Java classes/instances directly from Zope by calling ExternalMethods. PJE basically allows the Java vm to be loaded into the python interpreter. Tim I can speak about this one... The difficult part of getting Zope to w ork on Java, IMHO, is not the server. Without too terribly much work, I think you could get a servlet in front of Zope (once you've taken care of all of the other things). We've made some progress toward getting Zope running on Java (http://www.phabric.org). The past few weeks, phabric has been on the back burner at Web Elite because of unrelated paying work. There are two main areas of work in getting Zope on top of Java: the C modules and differences between C Python and Jython. We've made quite a bit of progress in both of those areas, but there's still more to be done before Zope will fire up and answer a request. Kevin Tim Hoffman Zute Pty Ltd mobile: 0411 06 fax:+61 8 6210 1883 email: [EMAIL PROTECTED] ___ Zope-Dev maillist - [EMAIL PROTECTED] http://lists.zope.org/mailman/listinfo/zope-dev ** No cross posts or HTML encoding! ** (Related lists - http://lists.zope.org/mailman/listinfo/zope-announce http://lists.zope.org/mailman/listinfo/zope ) ___ Zope-Dev maillist - [EMAIL PROTECTED] http://lists.zope.org/mailman/listinfo/zope-dev ** No cross posts or HTML encoding! ** (Related lists - http://lists.zope.org/mailman/listinfo/zope-announce http://lists.zope.org/mailman/listinfo/zope )
Re: [Zope-dev] A modest proposal: Replace medusa with Twisted
Phil Harris wrote: That said, I think JPE/PJE is the best way forward, but this problem needs to be solved (if it hasn't already). Latest CVS README says: Multithreading == Multithreading issues are taken care of. There is still a known issues concerning process termination (non-deamonic thread hang out) that can require that the process be interrupted or killed explicitely. Some more work need to be done on process termination and cleanup conditions of the virtual machines. ___ Zope-Dev maillist - [EMAIL PROTECTED] http://lists.zope.org/mailman/listinfo/zope-dev ** No cross posts or HTML encoding! ** (Related lists - http://lists.zope.org/mailman/listinfo/zope-announce http://lists.zope.org/mailman/listinfo/zope )
Re: [Zope-dev] A modest proposal: Replace medusa with Twisted
On Thursday 11 October 2001 03:30 am, Itamar Shtull-Trauring wrote: kapil thangavelu wrote: twisted is GPL and zope is not gpl compatible and that does not appear to be changing despite some mention from zc about trying to achieve compatiblity. Twisted is LGPL, and it might be possible to license it under something that will work with ZPL. I don't think this will be an issue if it comes to it. itamar, thanks for the license clarification. i didn't mean to suggest that its not a good idea to work on it. i was hoping that someone from zc would give some sort of status update to paul's statements from http://aspn.activestate.com/ASPN/Mail/Message/622793 june. kapil ___ Zope-Dev maillist - [EMAIL PROTECTED] http://lists.zope.org/mailman/listinfo/zope-dev ** No cross posts or HTML encoding! ** (Related lists - http://lists.zope.org/mailman/listinfo/zope-announce http://lists.zope.org/mailman/listinfo/zope )
Re: [Zope-dev] A modest proposal: Replace medusa with Twisted
People waste much more time arguing about the GPL license, than it would take for them to completely rewrite the entire Python and Zope code base from scratch under the GPL. So if you can't live with a non-GPL license, then instead of arguing about it, get yourself to work rewriting a new system from scratch under GPL, so you'll get what you want a lot sooner, and not waste everyone else's time who's already been over this before. Please stop using the GPL as a weapon to distract and waste the time of non-GPL projects, and do something constructive instead. E-fuck'n-nough said. -Don ___ Zope-Dev maillist - [EMAIL PROTECTED] http://lists.zope.org/mailman/listinfo/zope-dev ** No cross posts or HTML encoding! ** (Related lists - http://lists.zope.org/mailman/listinfo/zope-announce http://lists.zope.org/mailman/listinfo/zope )
Re: [Zope-dev] A modest proposal: Replace medusa with Twisted
Hmhm, that is cool, I'll take another look then :) - Original Message - From: Itamar Shtull-Trauring [EMAIL PROTECTED] To: [EMAIL PROTECTED] Sent: Thursday, October 11, 2001 5:39 PM Subject: Re: [Zope-dev] A modest proposal: Replace medusa with Twisted Phil Harris wrote: That said, I think JPE/PJE is the best way forward, but this problem needs to be solved (if it hasn't already). Latest CVS README says: Multithreading == Multithreading issues are taken care of. There is still a known issues concerning process termination (non-deamonic thread hang out) that can require that the process be interrupted or killed explicitely. Some more work need to be done on process termination and cleanup conditions of the virtual machines. ___ Zope-Dev maillist - [EMAIL PROTECTED] http://lists.zope.org/mailman/listinfo/zope-dev ** No cross posts or HTML encoding! ** (Related lists - http://lists.zope.org/mailman/listinfo/zope-announce http://lists.zope.org/mailman/listinfo/zope ) ___ Zope-Dev maillist - [EMAIL PROTECTED] http://lists.zope.org/mailman/listinfo/zope-dev ** No cross posts or HTML encoding! ** (Related lists - http://lists.zope.org/mailman/listinfo/zope-announce http://lists.zope.org/mailman/listinfo/zope )
Re: [Zope-dev] A modest proposal: Replace medusa with Twisted
Itamar Shtull-Trauring wrote: Actually, this brings up this idea I had - Zope should replace medusa with Twisted. Well, you're advocating this, so it's fair to paint a rosy picture. Can anyone see what the downsides would be? In any case, it does look cool. Perhaps a fishbowl proposal would be the way to go? Chris ___ Zope-Dev maillist - [EMAIL PROTECTED] http://lists.zope.org/mailman/listinfo/zope-dev ** No cross posts or HTML encoding! ** (Related lists - http://lists.zope.org/mailman/listinfo/zope-announce http://lists.zope.org/mailman/listinfo/zope )
Re: [Zope-dev] A modest proposal: Replace medusa with Twisted
Oops, forgot the URL: http://www.twistedmatrix.com/ ___ Zope-Dev maillist - [EMAIL PROTECTED] http://lists.zope.org/mailman/listinfo/zope-dev ** No cross posts or HTML encoding! ** (Related lists - http://lists.zope.org/mailman/listinfo/zope-announce http://lists.zope.org/mailman/listinfo/zope )
Re: [Zope-dev] A modest proposal: Replace medusa with Twisted
Designing the webpages of tomorrow http://webme-eng.com Designing the MMORPGS of tomorrow http://worldforge.org On Wed, 10 Oct 2001, Itamar Shtull-Trauring wrote: Actually, this brings up this idea I had - Zope should replace medusa with Twisted. Why, you ask? Any ideas what the performance would be compared to medusa? 1) Twisted separates transport from protocols, and the event loop it uses is extendable and generic. That means: - It can run on Jython (using threads, someday with java.nio), and it can be integrated with the Tk and GTK event loops. - Your protocol doesn't have to worry about the transport - Twisted supports SSL, TCP and unix domain sockets right now, without having to make any change to the protocols. SSL support out of the box would be a big deal. It really annoys me that zope does not support https by default. It is another thing to hunt down and merge in the config file for and it is necessary for any modern web server. 2) Twisted is designed to run multiple servers and protocols at the same time, and these can be changed at runtime. It already includes pure python support for HTTP, FTP, LDAP, SMTP, POP3, DNS, telnet, AIM TOC, and IRC, all integrated with the main event loop (all have server support except DNS and LDAP). Adding new protocols to Zope is not easy, at the moment. It would be really nice if it supported NNTP, SOAP, and XML-RPC also. However the last two could probably be stuck in fairly rapidly since python already supports those and they run over HTTP already. 3) Twisted is being actively developed and extended. medusa less so. Actively developed would definitely be an improvement. 4) Good integration with threads - while event based, twisted has a very nice model for dealing with threaded apps. What benefits would this really give? What drawbacks would we have to deal with? Overall I have noticed that python does not seem to actually thread very well since there is that global lock. 5) Twisted has Perspective Broker, an async.ready remote-object protocol that supports caching, object migration, and remote messaging, with integrated authentication and authorization. And it ideologically meshes with the object publisher notion in Zope. No, really :) This part sounds pretty cool I will definitely have to look at it some more. I looked at it a little while ago and it looked very cool however zope has some serious things that twisted does not. Mainly I really like how the access control system works, the user folder system and the object store. Twisted already includes a high-level web framework, but Zope probably would not use it, and instead build its own on top of twisted's low-level http support. We could essentially keep the ZMI however I do think the ZMI is due for a large rewrite soon. The frames and a few other things have got to go. Mostly because xhtml 1.0 is the last html version to even have frames and zope will have to adapt as things progress. It would not surprise me if in 2 or 3 years most new browsers didn't support frames anymore. ___ Zope-Dev maillist - [EMAIL PROTECTED] http://lists.zope.org/mailman/listinfo/zope-dev ** No cross posts or HTML encoding! ** (Related lists - http://lists.zope.org/mailman/listinfo/zope-announce http://lists.zope.org/mailman/listinfo/zope )
Re: [Zope-dev] A modest proposal: Replace medusa with Twisted
Hi Itamar, this sounds good for me. One would have to see it in the wild. Would you be able to do a sample integration for testing? At the same time unmeshing the publishing process sounds sexy to me... Regards Tino --On Mittwoch, 10. Oktober 2001 12:11 +0200 Itamar Shtull-Trauring [EMAIL PROTECTED] wrote: Actually, this brings up this idea I had - Zope should replace medusa with Twisted. Why, you ask? 1) Twisted separates transport from protocols, and the event loop it uses is extendable and generic. That means: - It can run on Jython (using threads, someday with java.nio), and it can be integrated with the Tk and GTK event loops. - Your protocol doesn't have to worry about the transport - Twisted supports SSL, TCP and unix domain sockets right now, without having to make any change to the protocols. 2) Twisted is designed to run multiple servers and protocols at the same time, and these can be changed at runtime. It already includes pure python support for HTTP, FTP, LDAP, SMTP, POP3, DNS, telnet, AIM TOC, and IRC, all integrated with the main event loop (all have server support except DNS and LDAP). Adding new protocols to Zope is not easy, at the moment. 3) Twisted is being actively developed and extended. medusa less so. 4) Good integration with threads - while event based, twisted has a very nice model for dealing with threaded apps. 5) Twisted has Perspective Broker, an async.ready remote-object protocol that supports caching, object migration, and remote messaging, with integrated authentication and authorization. And it ideologically meshes with the object publisher notion in Zope. No, really :) Twisted already includes a high-level web framework, but Zope probably would not use it, and instead build its own on top of twisted's low-level http support. ___ Zope-Dev maillist - [EMAIL PROTECTED] http://lists.zope.org/mailman/listinfo/zope-dev ** No cross posts or HTML encoding! ** (Related lists - http://lists.zope.org/mailman/listinfo/zope-announce http://lists.zope.org/mailman/listinfo/zope ) ___ Zope-Dev maillist - [EMAIL PROTECTED] http://lists.zope.org/mailman/listinfo/zope-dev ** No cross posts or HTML encoding! ** (Related lists - http://lists.zope.org/mailman/listinfo/zope-announce http://lists.zope.org/mailman/listinfo/zope )
Re: [Zope-dev] A modest proposal: Replace medusa with Twisted
But kosh, we all know your hatred of all things Microsoft. You're absolutely right, it could be fixed, and probably should be as well. Thing is that from what I see win32 is the most popular platform for Zope (I'm including experimenters here though, not just production sites). Anyone from ZC want to comment on that. - Original Message - From: [EMAIL PROTECTED] To: Phil Harris [EMAIL PROTECTED] Cc: Chris Withers [EMAIL PROTECTED]; Itamar Shtull-Trauring [EMAIL PROTECTED]; [EMAIL PROTECTED] Sent: Wednesday, October 10, 2001 12:21 PM Subject: Re: [Zope-dev] A modest proposal: Replace medusa with Twisted On Wed, 10 Oct 2001, Phil Harris wrote: I'd say the fact that it doesn't work on Win32 is a bit of a downer. Just a bit but overall I expect that could be changed if it where really important. From what I have seen under high load and python program will kill windows after a few days with some VM problems so this does not seem that important to me. I have seen on irc and the lists a good deal of problems to do with windows and zope with VM issues over time. I have not done much testing with that though since it seems like kind of a silly thing to spend a few thousand on an OS to run a free server on when you can run it on a free os also and just pay for the hardware. Designing the webpages of tomorrow http://webme-eng.com Designing the MMORPGS of tomorrow http://worldforge.org ___ Zope-Dev maillist - [EMAIL PROTECTED] http://lists.zope.org/mailman/listinfo/zope-dev ** No cross posts or HTML encoding! ** (Related lists - http://lists.zope.org/mailman/listinfo/zope-announce http://lists.zope.org/mailman/listinfo/zope )
Re: [Zope-dev] A modest proposal: Replace medusa with Twisted
On Wed, 10 Oct 2001 16:05:06 +0200 Itamar Shtull-Trauring [EMAIL PROTECTED] wrote: 2) Plugging in a different transports instead of TCP (e.g. SSL) is much easier in Twisted than medusa, as far as I can tell. In m2crypto's medusa ssl code very protocol needs its own subclass in order supports SSL. In Twisted that is done transparently - the protocol doesn't have to worry about the transport. Basically any protocol (excepting perhaps FTP) could run out of the box with SSL in Twisted, using the one SSL support module. Or Unix domain sockets for that matter :) 3) Twisted provides a larger number of protocols out of the box (e.g. pure python LDAP client, AOL TOC, IRC, POP3, SMTP, telnet) than medusa. Hopefully we will soon have an integrated DNS server as well, though I can't think how *that* would help Zope. Just to throw out another idea, Amos has discussed with me in the past the idea of replacing medusa with Apache 2.0. Compelling as many of Twisted's features may be, Apache 2.0 as far as i can tell supports many of them as well (except perhaps jython integration, which is a pipe dream anyway for Zope). Apache has the upshot in that it is rock solid, tested by millions, trusted by even more, and no doubt one of the most actively developed peices of software there is. For ZC the upshots of 1) not needing to maintain it, and 2) it being a excellent marketing tool outweight many technical benifits that twisted may have that Apache doesn't (I'd like to know what the differences are, however). For example, does twisted do URL rewriting? proxy? process/thread job control? Twisted does have the advantage of 1, but not 2. Further, our faith in the continuing development of Apache is, de facto, more than that of twisted simply based on the age, number of users, and number of developers of each project. I'm not dismissing the idea, I'm just pointing out an alternative to Itamar's alternative. ;) -Michel ___ Zope-Dev maillist - [EMAIL PROTECTED] http://lists.zope.org/mailman/listinfo/zope-dev ** No cross posts or HTML encoding! ** (Related lists - http://lists.zope.org/mailman/listinfo/zope-announce http://lists.zope.org/mailman/listinfo/zope )
Re: [Zope-dev] A modest proposal: Replace medusa with Twisted
On Wednesday 10 October 2001 08:09 am, Michel Pelletier wrote: Just to throw out another idea, Amos has discussed with me in the past the idea of replacing medusa with Apache 2.0. Compelling as many of Twisted's features may be, Apache 2.0 as far as i can tell supports many of them as well (except perhaps jython integration, which is a pipe dream anyway for Zope). Apache has the upshot in that it is rock solid, tested by millions, trusted by even more, and no doubt one of the most actively developed peices of software there is. For ZC the upshots of 1) not needing to maintain it, and 2) it being a excellent marketing tool outweight many technical benifits that twisted may have that Apache doesn't (I'd like to know what the differences are, however). For example, does twisted do URL rewriting? proxy? process/thread job control? i'd never thought i'd see the day, open source software advocating the inclusion of other open source software because of marketing dictates. I'm not dismissing the idea, I'm just pointing out an alternative to Itamar's alternative. ;) my alternative to your alternative, is aolserver and mozilla. no mozilla isn't a webserver, but why should zope be either. cheers kapil ___ Zope-Dev maillist - [EMAIL PROTECTED] http://lists.zope.org/mailman/listinfo/zope-dev ** No cross posts or HTML encoding! ** (Related lists - http://lists.zope.org/mailman/listinfo/zope-announce http://lists.zope.org/mailman/listinfo/zope )