Web framework

Discussion in 'Python' started by Gianluca Sartori, Mar 9, 2005.

  1. Hi guys,

    What web framework do you suggest to develop with? I had a look both at
    Nevow and Quixote. These seemes to be the most appreciated by the
    community. Anyway, I had no luck looking for a complete and coherent
    documentation.

    Thanks for any suggestion,
    Gianluca
     
    Gianluca Sartori, Mar 9, 2005
    #1
    1. Advertisements

  2. Gianluca Sartori

    dowskimania Guest

    I really like CherryPy. It has a very intuitive design. A "directory"
    is an object and the "files" in it are methods. URL variables are
    passed as arguments to the methods. The CherryPy site has a good
    tutorial and some examples that should get you up and running fairly
    quickly.

    http://www.cherrypy.org
    Hope this helps.

    Christian
     
    dowskimania, Mar 9, 2005
    #2
    1. Advertisements

  3. Gianluca Sartori

    Jeff Reavis Guest

    You may also want to look at Spyce. It is similar to JSP,PHP, or ASP.
    There are some good docs and examples at the site.

    http://spyce.sourceforge.net/

    -jjr
     
    Jeff Reavis, Mar 9, 2005
    #3
  4. Snakelets is nice, clean, simple to get started, and well documented.
    Karrigell is about in the same league. CherryPy is a step above (all IMO of
    course).
     
    Fred Pacquier, Mar 9, 2005
    #4
  5. Gianluca Sartori

    Phil Jackson Guest

    I tend to use mod_python.

    Phil
     
    Phil Jackson, Mar 9, 2005
    #5
  6. Hi Christian, thanks for your replay. I gave a quick look at cherryPy
    too, but I had the impression it wasn't enought to be used in a real
    world contest. What about performances? Can I safely consider it to
    develop an Intranet/Extranet? My main concern is with scalability. What
    will happend if my user-base will grow? What if I had to add web
    services interface (say XML-RPC or SOAP) to my application? Can I do it
    in a second time without spending too much time/money?

    Thanks,
    Gianluca
     
    Gianluca Sartori, Mar 10, 2005
    #6
  7. Gianluca Sartori

    Tim Jarman Guest

    Hi Gianluca,
    In what respects do you think CherryPy falls short? There are some nice
    performance stats on the CherryPy wiki (look under the FAQ) and in any case
    you can run it behind Apache. It handles XML-RPC out of the box - not sure
    about SOAP, but the design is sufficiently modular to add that in if
    required. There are real-world sites using it in production; again, check
    out the wiki.

    HTH,
    Tim
     
    Tim Jarman, Mar 10, 2005
    #7
  8. Far from true :) A few data points (taken from
    http://www.cherrypy.org/wiki/CherryPySpeed):

    - In 99% of the cases, the answer is "this depends on your actual
    application code, not on CherryPy itself".

    - CherryPy averages 429 requests/second, in threaded mode (which
    includes the penalty for thread-switching), in a Pentium 1.6 Ghz, 1GB
    RAM, under Windows XP 2. The test was run using ab, the load testing
    tool from the apache project.

    - In practice, we found it easier to exceed available bandwidth than
    to exceed CherryPy's limits. With something as low as 200 requests/s
    one can get a few MB/s of throughput (that's measurable, but I don't
    have the numbers for this test; but to the math yourself, for a 10Kb
    page...). Of course, Intranet sites do not suffer from this problem,
    but the userbase is usually limited.

    - The worst case scenario is when one have lots of small objects to
    serve. This usually means static content (icons & small gif files),
    and can be greatly accelerated by running CherryPy under a caching
    frontend - either Apache, or even squid in web acceleration mode work
    just fine.

    While you are at it, check also this page:

    http://www.cherrypy.org/wiki/CherryPyProductionSetup

    --
    Carlos Ribeiro
    Consultoria em Projetos
    blog: http://rascunhosrotos.blogspot.com
    blog: http://pythonnotes.blogspot.com
    mail:
    mail:
     
    Carlos Ribeiro, Mar 10, 2005
    #8
  9. Gianluca Sartori

    Chris Guest

    Does CherryPy require a python installation on the client side?
     
    Chris, Mar 10, 2005
    #9
  10. Gianluca Sartori

    Lutz Horn Guest

    No, it only sends HTML-pages and other media to the client's browser.
     
    Lutz Horn, Mar 10, 2005
    #10
  11. Well, my concern here was mostly about SSL support. It seems it's not
    supported natively. Anyway, I'm looking at all those frameworks by a
    'pre-evaluation' point of you. so I'm fully trusting what I can read on
    their websites...
     
    Gianluca Sartori, Mar 11, 2005
    #11
  12.  
    andre.p.meyer, Mar 13, 2005
    #12
  13. You should definitely have a look at Zope 3. There is good
    documentation available and it can do a lot of good stuff.
     
    andre.p.meyer, Mar 13, 2005
    #13
  14. Gianluca Sartori

    Sridhar Guest

    Sridhar, Mar 13, 2005
    #14
  15. Gianluca Sartori

    Joe Guest

    But then, the thing I hate about Zope, is that source code is not
    accessible with normal development tools since it's stuck in the ZODB.

    Joe.
     
    Joe, Mar 13, 2005
    #15
  16. Plain wrong. You can access them via FTP and WEBDAV. In kde under linux, all
    file-io can be done through these protocols, so you can operate on them as
    if they were local files.
     
    Diez B. Roggisch, Mar 13, 2005
    #16
  17. Gianluca Sartori

    Venkat B Guest

    I'd say Nevow! For apache setup, you might be interested in my wsgi [1]
    Hi Sridhar,

    Are you aware of Nevow's "integrability" with the webservers (CGIHTTPServer
    in particular) that come packaged with Python itself ?

    Thanks,
    /venkat
     
    Venkat B, Mar 13, 2005
    #17
  18. Gianluca Sartori

    Joe Guest

    Not wrong. I am aware of this, but it's not like that many development
    tools can work through FTP or WebDav... Besides, how to have the
    source code under source control if it's stuck in the ZODB?

    Joe.
     
    Joe, Mar 14, 2005
    #18
  19. Gianluca Sartori

    Josef Meile Guest

    Hi Joe,
    I guess you are reffering to "Python Scripts" and "ZClasses", which
    indeed are stuck in the ZODB. But in fact you can write external python
    products for zope, which reside on your file system. What is stuck in
    the ZODB would be the instances of those products.

    Regards,
    Josef
     
    Josef Meile, Mar 14, 2005
    #19
  20. Not wrong. I am aware of this, but it's not like that many development
    If your tools can't, then you can still use ftp clients to push the files to
    the server. Actually lots of web-development is done by working locally on
    the files, then publishing these to the server. Think of the horror to
    create apache modules with certain lib dependencies (e.g. oracle) under
    windows. Some people I know even abuse CVS for uploading their files to the
    server - which renders CVS pretty useless.

    And quite a few tools _are_ capable of directly using ftp as storage
    backend. (x)emacs for example.
    You can still fetch it using webdav and ftp and stick it into CVS/SVN.
     
    Diez B. Roggisch, Mar 14, 2005
    #20
    1. Advertisements

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments (here). After that, you can post your question and our members will help you out.