Results 1 to 10 of 15

Thread: Gatling: High-Performance Open-Source Server

Hybrid View

  1. #1
    Join Date
    Jan 2007
    Posts
    15,182

    Default Gatling: High-Performance Open-Source Server

    Phoronix: Gatling: High-Performance Open-Source Server

    After recently bringing up the G-WAN web-server, a Phoronix reader brought up Gatling. The Gatling software is a high-performance open-source web-server not known as widely as Apache, Nginx, or lighttpd...

    http://www.phoronix.com/vr.php?view=MTE0NDQ

  2. #2
    Join Date
    Jun 2006
    Posts
    358

    Default

    No ARM builds?

    Monkey got them, even running on the Raspberry Pi a setup I'll try as soon as I decide what fsking SD card I should purchase.

    So these news items mean that a lightweight web server head-to-head is maybe in the works? I would love to see one, even one on your ARM pandaboard cluster... yummy....

  3. #3
    Join Date
    Jun 2010
    Location
    ฿ 16LDJ6Hrd1oN3nCoFL7BypHSEYL84ca1JR
    Posts
    1,052

    Default

    I have used that sometimes and I like it for its simplicity. Want to serve a specific directory quicky?
    Code:
    cd directory; gatling -S -F -p 1234
    Want to serve content per cgi/fcgi? Couldn't be easier (but its not as clear documented as I'd like, you need to run it as root I believe, not a problem since it supports privilegue dropping).

    I think he wrote gatling mainly as a "real world" usage of his diet libc. (Some slides about the why).

    At the moment it seems it isn't working correctly anymore due to not having been updated for a while, probably.

    For only one concurrent request at a time it works fine with ~4k requests/second, but with more concurrent requests there are some problems with sockets:
    Code:
    socket_error 32 Bad file number
    close/writefail 32 98 218
    Also, nginx does more requests/second with 1 concurrent request.

    I only tested a small static file with the content "hello world".

    On the other hand his website and blog run on gatling very, very reliably so I would guess it's just a problem with new linux behaviour.

  4. #4
    Join Date
    Oct 2009
    Posts
    101

    Default

    OK, this is not particularly relevant to its performance, but CVS? Seriously? In 2012? For an open-source project? I have to use CVS at work, and it is...not my favorite part of my job. I have to wonder how many potential contributors will be turned off by CVS's limitations and quirks when I can barely tolerate it when I get paid to do so.

  5. #5
    Join Date
    Feb 2010
    Location
    Srpska Republic, Bosnia&Herzegovina
    Posts
    109

    Default

    A few things I've noticed:

    - "file not found" error if there's no trailing "/" on directory name
    - directory listing does not list directories first
    - I also get some socket errors

  6. #6
    Join Date
    Sep 2010
    Posts
    229

    Default

    Quote Originally Posted by pejakm View Post
    A few things I've noticed:

    - "file not found" error if there's no trailing "/" on directory name
    Which is technically correct according to the HTTP/URL specs, although not exactly "DWIM"...

  7. #7
    Join Date
    Jun 2010
    Location
    ฿ 16LDJ6Hrd1oN3nCoFL7BypHSEYL84ca1JR
    Posts
    1,052

    Default

    Quote Originally Posted by waucka View Post
    I have to wonder how many potential contributors
    Well, first you have to know that it's by no means a project with much contribution anyway, only almost only a one-man project:
    Code:
     ~/gatling (cvs)-[gatling] % cvs log | grep author | grep leitner -c
    980
     ~/gatling (cvs)-[gatling] % cvs log | grep author | grep -v leitner -c
    5
    There are hardly any websites using it and from googling I learned that back in 2003 it was written to experiment with new APIs (Benchmarks from back then) and another goal was to write a webserver that would survive being slashdotted.

  8. #8
    Join Date
    Jul 2008
    Location
    Berlin, Germany
    Posts
    836

    Default

    Thanks to the fact that gatling does not attempt to support dynamic content, there needs not be any fast-paced development.

    The Monkey benchmarks are of limited value, as the exact build parameters for nginx are not known. Normally you build a monolithic binary with exactly the features you want.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •