On May 25, 2:17 pm, Tim <[email protected]> wrote:
> As I talked in the last posts, the hello world application was run
> under apache/mod_wsgi. "I just tested with mod_wsgi under apache and
> the requests/second is about 1,500 with a hello world application. "
>
> Please refer to the 3rd post for the details.

I originally suggested a plain WSGI hello world, not a web.py hello
world. There is a difference, as plain WSGI hello world doesn't depend
on web.py. If what you did was a web.py hello world test then fine.
One reason for suggesting a plain WSGI hello world test was that it
would also show you what overhead there was in web.py dispatching.
Depending on the complexity of your application, if the difference
between web.py and plain WSGI hello world was marked, it might show
you that perhaps using WSGI directly may yield better performance. For
something as simple as serving advertisements where URL routing
probably not needed, may not even be a need for web.py.

So, if you haven't done a WSGI hello world, would be curious to see
results of that relative to web.py. WSGI hello world program below.

  def application(environ, start_response):
    status = '200 OK'
    output = 'Hello World!'

    response_headers = [('Content-type', 'text/plain'),
                        ('Content-Length', str(len(output)))]
    start_response(status, response_headers)

    return [output]

Graham

> On May 25, 12:02 pm, Graham Dumpleton <[email protected]>
> wrote:
>
> > On May 25, 1:41 pm, 柯甫敬 <[email protected]> wrote:
>
> > > For the performance bottlenecks on my application side, I think I could 
> > > have
> > > a couple of ways to optimize. You could regard it as a simple hello world
> > > application for now. My real question actually was "is it possible for
> > > lighttpd/fastcgi/webpy to support up to 1,000 requests/second for a simple
> > > hello world application"? I think increasing the threads limit in webpy
> > > could help, but I didn't find where to set or change in webpy. Can anyone
> > > help on this?
>
> > What does a hello world program using web.py on Apache/mod_wsgi yield?
> > If you can't even get 1000 requests per second on Apache/mod_wsgi,
> > which is already proving to yield better performance than your fcgi
> > setup, then unlikely that even if fcgi is tuned that you will achieve
> > anything better.
>
> > Even though lighttpd or nginx may be faster than Apache for yielding
> > static files, flup when used with fcgi adds a fair bit more overhead.
> > End result is that more often that not, a fcgi/flup application will
> > run slower than Apache/mod_wsgi. That is why Apache/mod_wsgi is a good
> > reference here as is close to maximum you can expect to get without
> > starting to load balance across multiple boxes etc.
>
> > Graham
>
> > > Thanks in advance.
> > > 2009/5/25 Tim <[email protected]>
>
> > > > Thanks Graham.
> > > > My application is actual an ad serving application. I just tested with
> > > > mod_wsgi under apache and the requests/second is about 1,500 with a 
> > > > hello
> > > > world application.
> > > > It looks like a problem with fcgi then. How do you think?
> > > > 2009/5/25 Graham Dumpleton <[email protected]>
>
> > > >> On May 25, 12:08 pm, Tim <[email protected]> wrote:
> > > >> > I'm recently porting an apache module to be webpy/fcgi/lighttpd based
> > > >> > application, but the performance doesn't look like good.
>
> > > >> > With the apache module writen in C, it was able to process up to 
> > > >> > 2,000
> > > >> > requests per second, however, when I ran a simple helloworld
> > > >> > application with webpy/fcgi/lighttpd, the server was processing about
> > > >> > 300 requests per second.
>
> > > >> > I was followinghttp://webpy.org/installfortheinstallationand
> > > >> > default lighttpd configurations. I'm new to lighttpd and webpy, so 
> > > >> > I'm
> > > >> > wondering if there are any configuration options in lighttpd/webpy to
> > > >> > tune the performance to make the requests/second to be more than
> > > >> > 1,000? Also, is there any way to increase the threads limit in webpy
> > > >> > since when I tested with more than 120 concurrent users I would get
> > > >> > "backend is overloaded" errors?
>
> > > >> What does your application do? Without knowing that, it is very hard
> > > >> to comment on whether your problems may actually be in your
> > > >> application, the fastcgi bridge, or your web server.
>
> > > >> You should perhaps create a simple WSGI hello world program that
> > > >> doesn't even use web.py and determine how many requests that can
> > > >> handle. You might also as comparison to gauge whether the web server
> > > >> and/or fastcgi is the issue, compare that to WSGI hello world program
> > > >> under Apache/mod_wsgi on same system.
>
> > > >> Graham- Hide quoted text -
>
> > - Show quoted text -
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"web.py" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [email protected]
For more options, visit this group at http://groups.google.com/group/webpy?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to