Amos Shapira wrote:
2009/6/9 shimi <linux...@shimi.net>:
At what layer do you define "dropping a request" ? Not accepting a TCP
connection (4) ? Failure to complete the request from the reverse proxy to
the backend servers (HTTP error) (assuming you have backend servers - the
network structure is not obvious from your original message)?
We use Linux Virtual Server (LVS) in DR mode (i.e. packets come in to
a virtual IP through the LVS, outgoing replies are sent directly from
the Real Servers) in load-balancing (i.e. multiple servers accept and
handle requests in parallel).
Some of the Real Servers are configured as "persistent", i.e. all
requests from same client within a two-minute period will be handled
by the same Real Server, due to functional requirements, others don't
have this requirement.
What answers the TCP requests to port 80?
All requests are handled by Apache 2.2 modules written in C++.
Do you use efficient HTTP handlers already, e.g. Lighttpd or even better,
nginx? :)
We looked at it (lighttpd) and back then didn't see a justification to
make the switch (already had in-house knowledge to write Apache
modules vs. another learning period to take with lighttpd, plus
Apache's flexibility back when we didn't know what we'll need was a
factor, e.g. we also had php, perl and CGI code running around at the
beginning).
As far as we can tell the bulk of the load is inside our own
home-grown module, not inside Apache.
What I'd like to know is how many failed connections clients receive,
be it "connection refused" or time outs.
If it's at the TCP level you want to know this, a sniffer is probably
your best approach. I'm not aware of any ready made one, but writing a
dedicated one (even without libpcap) that is capable of living up to the
load you describe should not be too big a project.
Contact me if you want a quote :-)
Shachar
--
Shachar Shemesh
Lingnu Open Source Consulting Ltd.
http://www.lingnu.com
_______________________________________________
Linux-il mailing list
Linux-il@cs.huji.ac.il
http://mailman.cs.huji.ac.il/mailman/listinfo/linux-il