Hi, Brett,
On Sun, 28 Jun 2009 13:36:03 +1000 "Brett @Google" brett.maxfield@gmail.com wrote:
but on some cases(including my environment), UPDATE happens 3-10 times in a day. it's much less than SEARCH. in this case, I think we can just put loadbalancer, and enable "load balancing" and "redundancy" (I understand UPDATE isn't load balanced.)
Update is not load balanced, but it could be. You could have a "read only" balance rule, and a "read write" balance rule, either on sererate ip or seperate port. They would both point to the same servers, but the balance rules would act differently based on the selectioj of ip / port.
If you are able to distinguish between read only and read write applications, then you could configure your read only applications for "round robin", and your read write applications for "sorry server" ie. traffic only hits the secondary if the primary is down.
Ie. a typical use is for mapping email adreesses, in this case the mailers are only ever frequent read, and whatever puts the emails in are seldom write (by comparison). In this case mailers need high speed round robin for load sharing, updating application only need's it's writes to be accurately stored (extreme speed is not such a priority)
Alternately if you have one application that does high frequency read and write, you could always put a ldap proxy in front and try to divert the writes toward the "read write" balance, and the read only queries toward the "read only" balance, via use of a slave syncrepl and updatedn.
I understand your case. what I wanted to do is this.
- I have L4 load balancer - want to do load balancing(for search) & HA - no frequency "writes" - simple as possible
to separate LB configuration(port,host), or building LDAP proxy maybe easy, but complicated work. if I can build ldap servers as following, I believe it's simpler.
-------------------------------------------------------- CLIENT | SLB(RoundRobin) | +-----+ SRV1 SRV2
* MirrorMode is enabled on SRV1 and SRV2 --------------------------------------------------------
the problem is as Howard said, "writes period" If there are too much "writes" in every seconds, I understand I shouldn't choose this. but if it is 10writes/min, it must be safe.
and how about 1write/sec, 10writes/sec, 50writes/sec, 100writes/sec... I want to know this threshold like,
- if writes happen 0-5/sec, it's 99% safe (at the worst unlucky case, only 2writes at the same time may break something) - 6-50/sec, may safe or not. - more than 50/sec, danger.
Regards,