wiki:TwistedWeb2

Version 14 (modified by glyph, 7 years ago) (diff)

--

Twisted Web2

Twisted.Web2 is the next generation web server built with Twisted. Web2 is under active development and its APIs should not be considered stable at this point. It is not a version of Twisted.Web and while the compatibility layer does support many, currently this is not the highest concern.

If you're here to learn about web development with Twisted, please read this page first!

Improvements over Twisted.Web:

  • Streaming upload data
  • Support for multiple headers of the same name
  • Separation of low level HTTP and high level request handling which allows it to run under other transports such as SCGI and CGI
  • IResource API improvements from Nevow
  • More versatile outgoing data streaming API
  • Correct header parsing
  • Full HTTP/1.1 support
  • Output filters (HTTP range support in a generic fashion, and gzip support)
  • Significantly better URI Rewriting when used behind a proxy such as Apache's mod_proxy

Things to further improve

  • Speed, it's not very fast, depending on how the benchmarks are done it's either significantly faster than Twisted.Web or twice as slow.
  • Better twisted.web compatibility
  • More and better tests

Twisted Web2 is available under the MIT Free Software licence.

Download

twisted.web2 is an experimental library, whose improvements will eventually be factored back into twisted.web.

If you want to use web2, please use an SVN checkout of Twisted trunk until the features you need have been made available in twisted.web.

Documentation

Documentation is available for Twisted Web2.

Contact

Subscribe to the twisted-web mailing list or visit the #twisted.web channel on irc.freenode.net to ask questions.

Report a bug or request a feature using the issue tracker (registration required), or browse Twisted Web2 tickets.