> Ok, sa luam ca ipoteza de lucru situatia de mai sus: trei servere de web.
> Fac round-robin pe DNS si clientii merge pe rand.
> 
> Dar daca unul din servere de web a murit (crash, system mantaince, etc)?
> 
> Daca un client acceseaza www.situl.meu si primeste IP-ul mashinii care e
> jos ce se intampla:
> 
> (a) clientul primeste eroare
> (b) clientul reincearca la alt IP

TEORETIC, va incearca toate ip-urile pana cand unul raspunde sau nu
raspunde nici unul si atunci da eroare... De multe ori, clientii insa
il incearca doar pe primul (in special clientii scrisi de oameni care
nu au citit Stevens ;-)

> Logic ar fi ca odata ce clientul a rezolvat numele primind un IP care din
> nefericire nu merge, sa dea eroare si gata. Dar se poate sa ma insel?
> 
> Daca am dreptate, de aia e DNS load balancing nashpa?

Nu, pentru ca e foarte simplu sa pui in DNS un Min TTL foarte mic... 
Costul e traficul de DNS ceva mai mare, e adevarat.

Mie mi se pare perfect acceptabil ca timp de un minut sau doua
clientii care au in cache o adresa a unui server cazut sa nu mai poata
sa-l acceseze...

Insa si cu "Layer n-spe mii" switch, problema nu se rezolva
'on-the-fly' intotdeauna... si ala trebuie sa detecteze ca serverul e
down, si asta nu inseamna intotdeauna ca nu raspunde pe portul cu
pricina, etc, etc ...

Mie personal solutia cu DNS-ul mi se pare cea mai flexibila. Daca
serverele pe care faci tu load-balancing sunt distribuite in retea (a
la akamai), DNS e singura solutie.

Avantajul la DNS e ca poti sa faci si o serie intreaga de alte
smecherii... cum ar fi, daca ai mai multe conexiuni ale "fermei de
servere" la net, sa ii dai clientului adresa unui server la care
ajunge el mai usor, network-wise ... SAU sa servesti adresele
serverelor in ordinea crescatoare a incarcarii curente ...

Daca serverul de aplicatie e suficient de inteligent incat sa pastreze
un cache cu sesiunile clientilor in memorie, cu DNS poti face ca un
client sa acceseze intotdeauna acelasi server, de exemplu, ca sa eviti
niste operatii cu baza de date ...

Oricum, cand ai servere de aplicatie distribuite, modul in care faci
load-balancing pe ele e ultima dintre problemele tale :) Mult mai
dificil e sa scrii aplicatia in asa fel incat sa si ruleze distribuit
...

> Radu Filip

Matei
---
Send e-mail to '[EMAIL PROTECTED]' with 'unsubscribe rlug' to 
unsubscribe from this list.

Raspunde prin e-mail lui