hm ... procitam ove svoje odgovore posto ih napisem ... deluju mi kao odgovori nekih ljudi ovde na forumu koje pitas "kako da uradim nesto" a oni ti posalju pp sa "daj 500E i ja cu ti zavrsim" :( ... a stvarno mi to nije cilj .. firma me dovoljno placa da ne moram da navatavam tezge preko foruma :D (nije da bezim od njih al mi stvarno nisu neophodne) ..
ono sto mora da se shvati kada je bilo kakav HA/HR (high availability / high reliability) sistem u pitanju je da TO MORA DA KOSTA PARE ... svaka ona devetka kod HA/HR sistema dize exponencijalno cenu sistema .. i u hw-u i u sw-u i u administraciji, setapu, odrzavanju ... sve to mora da kosta ..
nekoliko hintova za "ustedeti"
ako je aplikacija "losa", tj sistem nije predvideo da ce da raste najjeftiniji je prvo da razdvojite DB server i APP server. posle toga - SCALE UP je najjeftiniji (nije najbolji ali daleko najjeftiniji) ..
1. stavis MNOGO RAMA - sto vise rama, vise stvari moze da se kesira, sve je mnogo brze
2. stavis storage sa VELIKIM IO mogucnostima (SSD diskovi u RAID0 satiru koliki IO mogu da pruze, dodas im RAID1 da bi imao koliko toliku sigurnost - posto SSD-ovi oce da riknu povremeno)
3. stavis MLOGO BRZ CPU i bar 8 jezgara (ne preterivati sa jezgrima kada je mysql u pitanju, mnooogo bolje 2 EXTRA BRZA jezgra nego 200 sporih - citaj zahebi T1000)
i to je to ..
sledeci korak - sve to UDUPLAS, stavis pod HB i semisinhronu replikaciju ili u kombinaciju sa DRBD-om
to je naaaajjeftinije resenje ..
za retke koji nemaju pisanje po bazi, SAN sa multi scsi stekerom mountujes sa vise masina (dakle X masina mountuje isti disk), na njega turis neki cluster file system (ospf/gfs2 ili slicno) koristis samo myisam tabele i upalis external locking - to ti daje mogucnost da na svim masinama startujes mysql sa istim datadirom (bez external lockinga ili sa innodb-om bi to sve otislo u majcinu ali ovako ce da radi) ... kada jedan mysql oce da pise po tabeli on je zakljuca a posto je upaljen external locking to se preko cluster fs-a vidi i na ostalim masinama ... ovo radi ok, doduse mora se malo tweakovati mysql da ne bi imao pogresne podatke po keshevima i slicno ...