Menu

#72 Improved performace under high load

closed-fixed
nobody
None
5
2012-08-03
2004-08-23
Stephen
No

This patch adds a new socket driver config option:
acceptmax, which if not present defaults to 1. It
controls the number of new tcp connections which are
accepted on each spin of the driver thread (currently
1). It sets an upper limit, not a requirement, so if
set to 5 but only 4 connections are waiting, 4 are
accepted. If set to zero, all pending connections are
accepted.

See paper for details:
http://bcr2.uwaterloo.ca/~brecht/papers/getpaper.php?file=usenix-2004.pdf

Discussion

  • Stephen

    Stephen - 2004-08-23
     
  • Andrew Piskorski

    Logged In: YES
    user_id=43168

    This seems interesting. This new tuning knob means that if
    acceptmax is say, 10, AOLserver will accept up to 10 pending
    connections with only a single select() call?

    The select() call itself is expensive so being able to tune
    that could be a big performance win for some people? This
    sounds like something that AOL's load-testing Ops people
    might very well be interested in, too?

    Hm, I'm curious, given the "aggressive read-ahead" model of
    AOLserver 4.x, how come this knob wasn't included already?
    Jim just hadn't thought of it yet?

    Drifting further off topic:

    That "acceppt()able Strategies for Improving Web Server
    Performance" paper tested 3 different example servers.
    Considered as a group, they probably cover AOLserver's
    architecture, but no single one of them actually matches
    AOLserver's design. It would be interesting to see specific
    AOLserver tests.

    Also, while an excellent justification for including this
    tuning knob in AOLserver, that paper is pretty narrow.
    Links to other sources that more thoroughly discuss the
    bigger picture of writing high-performance network server
    software (e.g., Walsh's various SEDA papers?, some of the
    links on the C10K page?) could also be useful.

    Finally, it would also be really cool if someone in the know
    would write a good design paper thoroughly explaining
    AOLserver 4.0's server architecture. (Too bad we don't seem
    to have an academic researcher motivated to write those
    papers and such on AOLserver.)

     
  • Andrew Piskorski

    Logged In: YES
    user_id=43168

    Has this improvement gone into the Head yet?

     
  • Jeff Rogers

    Jeff Rogers - 2012-08-03

    This functionality has been added.

     
  • Jeff Rogers

    Jeff Rogers - 2012-08-03
    • status: open --> closed-fixed
     

Log in to post a comment.