Skocz do zawartości
jarek-jarek

Jeden Serwis Www I Kilka Serwerów. Jak ?

Polecane posty

Witam.

Pytanie czysto teoretyczne, dopiero zaczynam w tym temacie. Powiedzmy ze istnieje serwis www zbudowany w oparciu o php 4 i bazie mysql. Jest hostowany na virtualu. Zaczyna brakowac mocy jest przeniesiony na dedyk który w najlepszej konfiguracji nie wystarcza (procek 100% mało ramu brakuje przestrzeni dyskowej) . Co wówczas zrobic ? rozbić serwis na kilka części, jak będzie to funkcjonować. Wogóle są firmy które mają taką oferte hostingowa. Trzeba będzie zmieniać oprogramowanie skryptów wówczas np przy zapisie zdjęc itp ???

Pozdrawiam.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
Witam.

Pytanie czysto teoretyczne, dopiero zaczynam w tym temacie. Powiedzmy ze istnieje serwis www zbudowany w oparciu o php 4 i bazie mysql. Jest hostowany na virtualu. Zaczyna brakowac mocy jest przeniesiony na dedyk który w najlepszej konfiguracji nie wystarcza (procek 100% mało ramu brakuje przestrzeni dyskowej) . Co wówczas zrobic ?

 

Na przykład wrzucić MySQL-a na jeden serwer, a resztę na drugi.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Możesz dorzucić dysk do serwera. Wrzuciłeś już tyle, że nie możesz więcej? No to masz jeszcze NAS i tego typu rozwiązania. Poza tym bez problemu możesz przenieść część danych na inny serwer i linkować do niego np przy download itp. Baza Ci się rozrosła? No to możesz zrobić sobie klaster z wielu serwerów. Zawsze możesz zmienić oprogramowanie, zoptymalizować tabele i bazy danych tak żeby dało się to łatwo rozdzielić na wiele serwerów, podobnie z plikami.

Możesz też zawsze przejść na lepszy sprzęt (np. takie serwery klasy mainframe jak jakieś iSeries) ale ogólnie teraz raczej się od tego odchodzi i stosuje się rozwiązania rozproszone (patrz choćby Google czy Wikipedia).

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

To sie zmienia przema na cos innego :)

 

A tak na powaznie -> loadbalancing / klaster. Poza tym zawsze mozesz kupic lepsza maszyne :)

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Dzieki za info. To juz coś wiecej wiem na ten temat. Sorki za te pytania ale jak jest w przypadku skryptow php ? np mam juz to rozbite na kilka serwerow na jednym skrypty itp. na innych same pliki np fotki mp3 video itp. tylko co w przypadku php jak bedzie user z forma wysylal pliki na dany serwer skoro dany skrypt przystosowany jest do locala ???a jak zapisac na innym serwerze dany plik skoro jest w innej sieci serwer :)

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

No i dochodzisz do tego momentu, gdzie albo musisz kupować coraz to lepszy sprzęt bo oprogramowanie jest zaprojektowane do używania zasobów tylko jednego serwera, albo zmieniasz oprogramowanie.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Wg. mnie podziałka np. na 3 maszyny, na jednej silnik php, na drugiej dobrze skonfigurowana baza, na trzeciej serwer do downloadu, wystarcza juz do bardzo duzych obciazen. No chyba ze masz naprawde jakiegos kolosa, to mozesz robic klaster, albo kombinowac z jakims podzialem obciazenia generowanego przez php. Ale jak to jest, masz tak wielki serwis, czy zwyczajnie Twoj skrypt przy 100 uniq'ach na dobe tez zajedzie nawet 10 mocnych maszyn? :)

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Zawsze można się pozbyć ciężkiego Apache i zastąpić go czymś o niebo wydajniejszym. Są już w sprzedarzy dyski SAS 1Tera więc pole manewru jest i w oprogramowaniu i w sprzęcie. Stare skrypty dobrze tez jest optymalizować. Php ma wbudowaną obsługę FTP i wiele innych ciekawych rzeczy :) Może powiedz czym dysponujesz obecnie to będzie łatwiej sie zorientować.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Albo łatwiej, i prawie tak samo dobrze - zmienić ciężkiego prefork MPM na o niebo wydajniejszy MPM worker..

 

P.S. To ciekawe jak ludzie dają się nabierać na te porównania w stylu "jesteśmy N razy szybsi niż Apache"... Tak Apache to niezły kombajn ale też sam w sobie jest właściwie głównie takim frameworkiem (APR + APR-UTILS) i pewnym szkieletem. Tam praktycznie wszystko dzieje się wewnątrz modułów, które można swobodnie wymieniać. Silnikiem jest MPM i to od niego najwięcej zależy w kwestii wydajności. Nie widzę powodów dla których jakiś serwer WWW miałby być o niebo szybszy i lżejszy od takiego samego rozwiązania stworzonego w formie modułów Apache. Prefork jest ślamazarny (ale domyślnie w większości dystrybucji Linuksa i innych systemów używa się go domyślnie dla kompatybilności) i żaden nowoczesny serwer nie używa takiego podejścia. Ale mamy do wyboru worker, event, threadpool, leader (eksperymentalne) i wiele zewnętrznych modułów (ITK, metux, perchild itp).

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Witam.

No własnie niczym nie dysponuje pytanie było czysto teoretyczne. Generalnie chodzi o rozwiazanie problemu braku miejsca na dyskach wiekszego obciazenia itp. rozbiciu tego na kilka serwerow. Czyli jeden serwis www na kilku maszynach bez klastra bo to kosztowna sprawa bardziej niz dedyki chyba :) No i od razu powstalo kolejne pytanie jak projektowac aplikacje internetowe. Bo jezeli kod bedzie wspolpracowal tylko z lokalem i w momencie zaistnieje rozbicie na kilka serwerow to wtedy trzeba bedzie przeprogramowac wszystko. Nie wiem jak cenowo wyjdzie np 2 dedyki jeden na baze i skrypty drugi na dane w tym samym datacenter itp.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Powiem tak, jeśli Twój serwis będzie miał taką oglądalność,

że będzie trzeba rozłożyć ruch na... hmmm... przykładowo 6 maszyn,

wtedy będzie Cię stać na zatrudnienie admina, który to zrobi. :)

 

Z Twoich wypowiedzi jasno wynika, że kładziesz nacisk głównie na powierzchnię dyskową...

nowe youtube? rapidshare? na 100% będziesz trzymał o tych plikach jakieś notki

w bazie danych, toteż nie widzę przeszkód, aby za kilka miesięcy dodać kolumnę pt. "id-serwera",

gdzie będą wartości na zasadzie "img1.domena.pl/video1.domena.pl",

które to jasno będą wskazywały skąd ten plik ma być pobrany...

 

Nie kupuj na początek dwóch maszyn. Nie ma sensu.

W przypadku pojedyńczego serwisu, gdzie zmiana adresu serwera bazodanowego

ograniczy się do edycji jednego pliku, przerzucenie baz danych na drugi serwer to chwila moment.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Bądź aktywny! Zaloguj się lub utwórz konto

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto

Zarejestruj nowe konto, to proste!

Zarejestruj nowe konto

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się


×