|
Тема |
Re: Load Balancing and High-Availability [re: w] |
|
Автор | madison (Нерегистриран) | |
Публикувано | 19.07.07 17:54 |
|
|
Prosto i qsno ( da me proshtavate za latinicata, no mi e po-udobno ):
1. Load balancing - kakto razbrah, iskash da balansirash web trafika kakto i DB trafika. Nai-prosto e da napravish round-robin load balancing. Edin hostname sochesht kum dve razlichni IP-ta. Zaqvkite shte budat prashtani na sluchaen princip kum dvete mashini. Tuk veche idva i trudnata chast - kak da durjim content-a na dvete mashini ednakuv. Na pomosht idvat nqkolko neshta:
a) Nqkakwa distributivna failova sistema, koqto da replikira content-a mejdu nodovete. DRBD e edinvariant puk e i bezplaten. Vqrno... ne raboti koi znae kolko dobre, puk i ne sum q testval na natovarvaniq kakto i ednovremenno replikirane dvustranno ( active<->active ), no e fakt che raboti.
Estestveno ima i komersialni resheniq edno ot koito e ( s koeto sum si igral nai-mnogo ) e na http://radiantdata.com/ i se naricha PeerFS. Raboti dosta snostno ( da ne kaja chudesno ) kato naistina zivurshva active-active replication mejdu nodovete. Osven tova poddurja DB replication ( za sujalenie e ogranicheno samo za MyISAM engine pri mysql ).
Drug idva momenta ako iskash da balansirash trafika na baza na opredeleni krierii (natovarvane, broi connections, type of traffic i t.n. ). Tam veche shte trqbva dosta da si poigraesh dokato go napravish, no pak moje ( pone taka si mislq ) da stane sus neshto narecheno LinuxVirtualServer ( mojesh da prochetesh nqkude iz neta za "neshtoto" ).
b) FailOver - heartbeat e idealnoto za celta ( pishesh v google heartbeat i shte vidish kvo e tova ). Ako ednata mashina padne, drugata direktno shte i vzeme IP address-a. Cqlata operaciq trae za okolo secunda i ostava transperatno za userite. Nо тоwa neshto pak e podvlastno na sinhronizaciqta na content-a mejdu nodovete.
V kombinaciq LoadBalancing + FailOver shte postignesh taka jelaniq HighAvailability
Estestveno, vinagi mojesh da se otkajesh ot ideqta da go pravish sam i da si platish na nqkoi ( primerno na men ) za da ti izgradi reshenieto :). A estestveno mojesh ( pone az bih go napravil ) da prekarash nqkolko bezsunni noshti v opiti da razberesh kak da podkarash cqlata shema taka che napulno da zadovolqva nujdite ti.
------------------
Аз съм и пътят, и истината, и живота, и Jack, и Daniels !
Милиони стотинки ще бъдат изхарчени !
|
| |
|
|
|