Thursday, December 24, 2009

Uptime 99.999% cu Concept Cluster

Am pus in kit-ul Concept Server un Load Balancer(CLB=Concept Load Balancer). E fara dependinte, astfel incat sa poate fi pus pe orice masina (ce nu trebuie sa aiba si Concept instalat). Consuma 24k ram/user conectat. Nucleul foloseste un weighted round-robin, asigurand incarcare simetrica si proportionala cu capacitatea serverelor din cluster. Practic fiecare server poate avea alt sistem de operare: putem defini un cluster cu un server windows, unul bsd si unul linux fara probleme, fara ca userul sa observe vreo diferenta. Pe langa asta, CLB este capabil sa se lege la noi servere fara shut down si poate detecta serverele offline (putand de exemplu, peste noapte sa inchid o parte din servere). E frumos ca dupa screenshot-urile acelea frumoase de pe OS X sa trantesc si o consola.


Sa-ti explic scenariul:
Avem initial 4 servere, din care 1 nu functioneaza (cel cu FAIL). Deschidem 16 instante de Concept IDE (sau orice alta aplicatie Concept). Dupa ce deschidem cateva, anuntam ca vrem sa scoatem unul din servere (cel marcat cu REMOVED). Acesta nu va fi inchis automat ci nu va mai primi conexiuni. Va putea fi scos din sistem atunci cand nu mai are nicio conexiune activa, astfel incat sa nu deranjam niciun user. In momentul in care conexiunile ii ajung la 0, atunci va pleca din cluster. Mecanismul este foarte simplu, pentru ca fiabilitate este invers proportionala cu complexitatea.
Mai mult, load balancer-urile pot fi legate unul de altul, ca si cum ar fi servere (ele din exterior vazandu-se ca un server Concept).

No comments: