
leus at epublish
Aug 21, 2002, 1:55 PM
Post #1 of 2
(738 views)
Permalink
|
|
mod_backhand success, and questions
|
|
Hi all. I have been able to backhand everything here, on my production cluster. First, let me explain the scenario. We are providing statistics to web sites using the common approach of sending a small GIF image with lots of parameters, set cookies, and then putting every bit of info we can in a database. Right now, we are serving more than 10 million hits a day. Our setup is the following: - CoyotePoint Equalizer - 11 machines (linux, apache, mod_backhand, fast cgi) We are using only two machines to act as moderators, and the rest are our second tier. So far, so good, we saw a marginal improvement on performance without any advanced configuration scheme. ------------------------------------------------------------- <Location /cert/hit> SetHandler fastcgi-script Backhand removeSelf Backhand byAge Backhand byRandom Backhand byLogWindow Backhand byLoad </Location> <IfModule mod_backhand.c> BackhandConnectionPools off UnixSocketDir /var/backhand/backhand MulticastStats 192.168.10.31:4445,1 AcceptStats 192.168.10.0/24 </IfModule> <Location "/backhand/"> SetHandler backhand-handler </Location> ------------------------------------------------------------- For the other machines, config is very similar, except in the "MulticastStats" part, because we have added two multicaststats directives, pointing to the two moderators: ------------------------------------------------------------- <IfModule mod_backhand.c> BackhandConnectionPools off UnixSocketDir /var/backhand/backhand MulticastStats 192.168.10.31:4445,1 MulticastStats 192.168.10.32:4445,1 AcceptStats 192.168.10.0/24 </IfModule ------------------------------------------------------------- First, the questions: a) I don't want that the moderator A do balancing to moderator B; how to avoid this? (we have done it by forcing multicasting to itself) b) We need to keep the original IP address, because is part integral of our service (remember, we do stats). I found in early tests that if we don't add backhand directives to every machine in the second tier, we lose the original IP address (gets swapped with BackHandProxied). Is this behaviour by design? Right now, we solved this by adding Backhand directives to every machine, but it doesn't seems right, given these machines aren't balancing anything (in fact, they are unreachable from outside) Second, my impressions: For our kind of work, backhand looks like bless. In our previous setup, we had every machine responding to requests, with lots of performance issues. Right now, our two moderators are managing the incoming traffic pretty well, and the CPU load and memory usage in all other machines is nice and steady. We have solved a problem, and now we are going to use it to do more interesting stuff by using some custom made candidacy functions. I asked about it a couple of weeks ago, and the feedback was very useful. Now we have completed a first step, and are very pleased with the results. Congratulations to the gang, keep going with this excellent job. Regards, -- Leonardo Herrera L. mailto:leus [at] epublish
|