INTERNET, NOWE TECHNOLOGIE, WEBDEVELOPMENT, BADANIE INTERNETU

22 MAJA 2009  /  INTERNET  /  3 KOMENTARZE

SPOSÓB NA WYKOP-EFEKT

Wąskim gardłem każdej aplikacji webowej jest baza danych. Zwłaszcza na serwerach wirtualnych, gdzie - w zależności od opcji cenowej - współdzielimy miejsce z dziesiątkami innych stron. Nawet jeśli serwer da radę obsłużyć wiele jednoczesnych wejść na stronę, to gdy nasze skrypty odwołują się do bazy danych (a tak działa najpopularniejsze oprogramowanie blogowe WordPress), liczba obsługiwanych wejść drastycznie spada.

Nie każdego stać na serwer dedykowany, zwłaszcza blogera. Trudno też przewidzieć ruch jaki będzie na blogu. Zwykle jest on umiarkowany, ale od czasu do czasu zdarzy się tyle wejść, że strona przestaje działać. Za granicą nazywa się to digg-effect. W Polsce: wykop-efekt. Wszystko przez pojawienie się linka do strony na łamach popularnego serwisu.

Przygotowując mojego bloga długo zastanawiałem się nad wyborem platformy. Z jednej strony mam grzecznościowe miejsce na mocnym serwerze, gdzie stoi tylko kilka średniej wielkości stron. Mogłem więc skorzystać z dowolnego systemu, np. WordPressa. Z drugiej strony nie wiadomo jak długo będę mógł korzystać z tego serwera. Postanowiłem więc stworzyć własny engine. Założenie było jedno: blog ma nie korzystać z bazy danych i być odporny na masowe wejścia na stronę.

Wykonanie całości zajęło mi dwa wieczory, a działa to tak. Prosty panel administracyjny tworzy artykuły, które są gotowymi do zainkludowania skryptami php. Na koniec generowany jest dodatkowy skrypt, w którym są stablicowane tytuły i linki do wpisów (potrzebne do wygenerowania strony głównej i pliku rss). Komentarze do wpisów to również oddzielne skrypty php, a podczas moderacji zaakceptowane wypowiedzi grupowane są w postaci tablicy w pomocniczych skryptach.

Cały blog jest więc generowanym, rozrastającym się zbiorem skryptów php. Strona główna inkluduje tylko jeden skrypt ze spisem zajawek. Podstrona inkluduje skrypt z treścią artykułu i drugi skrypt ze stablicowanymi komentarzami. Obsługa bloga przez serwer to proste inkludowanie jednego lub dwóch skryptów, których jedynym zadaniem jest wyświetlenie gotowego tekstu.

W ten sposób posiadam system do prowadzenia bloga, który uruchomię na każdym serwerze wirtualnym który posiada obsługę php. Jestem niezależny od bazy danych i ograniczeń z nią związanych. Jeśli już nastąpi wykop-efekt, to dotknie on mnie - chyba nie przesadzę - kilkaset razy mniej dotkliwie niż w sytuacji gdybym prowadził bloga na WordPressie.

Dodatkową zaletą tego rozwiązania jest system backupu. Wystarczy przekopiować pliki na domowy komputer i to wszystko. To samo gdy zajdzie potrzeba przenieść bloga w inne miejsce - wystarczy przekopiować pliki. Instalacja - to samo.

Na koniec informuję, że nie udostępniam kodu bloga. Jest on wykonany z dużymi uproszczeniami jako spaghetti code. Może kiedyś zrobię z tego oficjalkę, ale póki co na to się nie zanosi.

Sławomir Wilk
Komentarze:


Krzysztof Lis2009-05-22 10:44
To rozwiązanie dla prawdziwych hardcore-owców. Dla zwykłego blogera pozostaje chyba tylko wtyczka cache'ująca do WordPressa albo... darmowy Blogger czy Blox. ;)
wujekp2009-10-12 20:37
no może i to działa. teraz. już przerabialiśmy forum na plikach txt ;) pare tysięcy plików i perl = wolno, wolno. hosting także wirtualny. teraz php + mysql = miód :)
Trevor2010-10-08 09:24
Nie słyszłem wcześniej o efekcie wykopu. Założenie bloga na wordpress jest takie naturalne, że nikt nie zadaje sobie pytania czy może zdarzyć się coś takiego. Myślę, że jest dużo zaufania do tej platformy bez troski o "wykop". Dobrze, że poruszyłeś ten temat. Teraz przynajmniej jestem świadom, że może się coś takiego zdarzyć.

Dodaj komentarz:

Podpis: (wymagane)
Adres Twojej strony WWW: (opcjonalnie)
Twój adres e-mail: (opcjonalnie)
Treść komentarza:
Antyspam: policz ile
wynosi jeden plus dwa:
(wymagane)