[ Pobierz całość w formacie PDF ]
które żądają dostępu do nich. Komputer wysyłający żądanie do serwera (żądający pliku
przechowywanego na serwerze) określa się mianem klient. A zatem określenie technolo-
gia po stronie serwera oznacza po prostu, że do uruchamiania programów i przetwa-
rzania danych wykorzystywany jest serwer. Podobnie, w technologii po stronie klienta
dane przetwarzane są w komputerze klienckim, w większości przypadków w przeglą-
darce WWW lub w powiązaniu z oprogramowaniem przeglądarki. Jest to bardzo istotny
podział, ponieważ wpływa on na sposób działania określonej technologii.
Po stronie serwera
Przykładami znanych technologii po stronie serwera są między innymi: CGI (Common
Gateway Interface), ASP (Active Server Pages) czy też JSP (Java Server Pages). Dość
często podczas korzystania z ośrodka WWW w obrębie adresu URL (Uniform Resource
Locator) możemy odnalezć ciąg cgi lub nazwy plików kończące się rozszerzeniami
.asp lub .jsp. Prawdopodobnie korzystamy z technologii tych dość regularnie, do wy-
konywania różnych czynności. Na przykład, z przetwarzania po stronie serwera korzy-
stamy za każdym razem, kiedy w wyszukiwarce zatwierdzamy frazę do poszukiwania.
W przypadku wyszukiwarek, do pobierania kryteriów wyszukiwania wykorzystywany
jest formularz HTML, a następnie kryteria te wysyłane są do serwera w celu przetwo-
rzenia. Po wykonaniu zadań przez programy lub przez skrypty na serwerze, wyniki są
przekształcane na format HTML i zwracane przez serwer WWW do przeglądarki.
Problemem, z jakim spotykamy się w przypadku technologii po stronie serwera, jest
czas uzyskiwania wyników. Jego przyczyny są dwojakie. Po pierwsze, w Internecie
występuje problem określany jako zatwierdz i czekaj . Dotarcie danych do serwera
i ich przetworzenie zajmuje pewien czas; podobnie potrzebny jest pewien czas, aby
dane zostały przesłane z powrotem. Może to być szczególnie uciążliwe dla tych użyt-
kowników, którzy łączą się z Internetem wykorzystując łącze telefoniczne.
Innym powodem możliwych opóznień jest fakt, że w technologiach przetwarzania po
stronie serwera następuje obciążanie serwera zadaniami przetwarzania. Nie stanowi to
zbyt dużego problemu, jeżeli serwer w danym czasie obsługuje tylko ograniczoną liczbę
żądań. Jednak każdy komputer ma limitowane możliwości przetwarzania. W przypadku
26 JavaScrIpt dIa każdego f& Część I
zajętych serwerów, przetwarzanie wielu tysięcy żądań w ciągu godziny i obsługiwanie
dziesiątek, jeśli nie setek żądań jednocześnie, może znacząco spowolnić działanie,
a w niektórych przypadkach spowodować nawet zatrzymanie serwera. Jeżeli często
korzystamy z Internetu, to z całą pewnością spotkaliśmy się z komunikatem o błędzie,
który informuje, że serwer WWW nie odpowiada i sugeruje ponowienie próby w póz-
niejszym czasie. Jest bardzo prawdopodobne, że w czasie, kiedy wysyłaliśmy żądanie
do serwera, nastąpiło przekroczenie jego możliwości przetwarzania i nie był on w stanie
przyjąć dalszych żądań.
Oczekiwanie na ładowanie stron spowodowane czasem przesyłania w sieci oraz czasem
przetwarzania na serwerze zjawisko występujące w technologiach po stronie serwera
jest zjawiskiem niepożądanym. Powoduje ono, że wykonywanie skryptów po stronie
serwera dla niektórych aplikacji (jak np. DHTML dynamiczny HTML) po prostu
się nie opłaca. Cały proces będzie bowiem zbyt powolny, a czas reakcji serwera niewy-
starczająco krótki, aby można było zapewnić interakcję pomiędzy użytkownikiem,
a stroną WWW w czasie rzeczywistym. Na marginesie, warto zaznaczyć, że terminem
dynamiczny HTML określa się różnorodne kombinacje języka HTML, JavaScript
oraz technologii CSS, które umożliwiają wprowadzanie na stronach WWW interak-
tywności i animacji.
Kiedy decydujemy się na wybór przetwarzania po stronie serwera, powinniśmy wnikli-
wie rozważyć wszystkie za i przeciw takiego rozwiązania. Cel, jakim jest zwiększenie
interaktywności i zastosowanie nowych rozwiązań, nie powinien być negowany przez
zbyt długi czas oczekiwania.
Po stronie klienta
Kiedy używamy technologii po stronie serwera, komputer-klient (a często także użyt-
kownik) bezczynnie oczekuje na załadowanie strony, podczas gdy po drugiej stronie
serwer ledwo nadąża obsługiwać wszystkie żądania. Oczywistym rozwiązaniem tego
problemu jest wykonywanie przynajmniej części zadań przetwarzania na komputerze-
kliencie.
Pierwszą korzyścią, jaką uzyskamy po przesunięciu pewnej części obciążenia na stronę
klienta jest zmniejszenie konieczności częstego ładowania strony. Ma to wpływ na
zmniejszenie czasu oczekiwania, ponieważ dane nie muszą tak często przebywać swojej
drogi w sieci. Dla przykładu, jeżeli sprawdzenie poprawności danych wprowadzanych
w formularzu HTML nastąpi po stronie klienta, z wykorzystaniem skryptów JavaScript,
unikniemy całkowicie opóznień sieciowych przynajmniej do czasu, kiedy dane będą
sprawdzone i przygotowane do przesłania na serwer w celu dalszego przetwarzania.
Ważną zaletą wykorzystywania skryptów po stronie klienta jest uzyskanie możliwości
programowania w obrębie samej strony WWW. W efekcie, zyskujemy możliwość two-
rzenia dynamicznych stron WWW odpowiadających na działania użytkowników, którzy
przeglądają stronę i wykonują na niej jakieś działania.
Oprócz bezpośredniej korzyści, jaką jest zmniejszenie obciążenia serwera, które jest
związane z koniecznością kilkakrotnego ładowania strony, istotne jest także to, że ser-
wer może odpowiadać na żądania znacznie szybciej, ponieważ nie musi wielokrotnie
RozdzIał 1. f& Podstawy27
wykonywać tych samych skryptów. W konsekwencji, żądania nie czekają przed wyko-
naniem w kolejkach lub czas oczekiwania jest znacznie krótszy. Poprzez jego skrócenie
możemy w znaczący sposób poprawić komfort użytkowników przeglądających strony.
Realia
Oczywiście, w rzeczywistości komputer-klient nie może wykonywać całego przetwa-
rzania. We wszystkich usługach wykorzystujących technologię WWW konieczne jest
przesyłanie danych na serwer w celu przechowywania lub przetwarzania. Dla przykładu,
złożenie zamówienia w ośrodku handlu elektronicznego nie będzie możliwe, jeżeli
zamówienie nigdy nie opuści naszego komputera. Z drugiej strony, wykorzystywanie
zasobów serwera (jego mocy obliczeniowej), powodujące nieuniknione koszty czasowe
związane z przesyłaniem danych na serwer, jest bezzasadne, jeżeli zadanie można równie
dobrze, a czasem nawet lepiej, wykonać po stronie klienta.
W praktyce wykorzystuje się zarówno technologie po stronie serwera, jak i po stronie
klienta. Obydwa rodzaje technologii są istotne dla działania nowoczesnych stron WWW.
Kiedy zadanie wymaga przesłania informacji na serwer, na przykład w celu przecho-
wywania ich na serwerze, należy przesłać te informacje. Jeżeli jednak jest to możliwe,
to przetwarzanie danych i sprawdzanie ich poprawności powinno być przeprowadzane
po stronie klienta, za pomocą skryptów. Najlepsze efekty uzyskuje się poprzez równo-
mierne rozłożenie obciążenia pomiędzy serwer a komputery klienckie.
Wybór właściwej technologii
Istnieją inne technologie wykonywane po stronie klienta (jak choćby Flash), które służą
głównie do poprawienia wyglądu strony oraz zwiększenia komfortu użytkownika. Za-
zwyczaj same przeglądarki nie zawierają wbudowanej obsługi technologii Flash, z tego
prostego względu, że sensowne jest obsługiwanie jedynie ograniczonej liczby forma-
tów danych. Aby korzystać z tej technologii, trzeba zainstalować odpowiednie rozsze-
[ Pobierz całość w formacie PDF ]
-
Archiwum
- Strona Główna
- Java Programowanie obiektowe
- Cartland Barbara Niegrzeczny aniośÂek
- Janet_Dailey_ _Przyrodnie_siostry
- 122. Wilkins Gina Lato
- The Billionaire's Obsession 1.4 Mine Completely J.S. Scott
- Leda Swann Rainlashed (EC)
- Robards Karen Pewne lato
- Courths Mahler Jadwiga Zagubiony pierśÂcionek (MaśÂśźeśÂstwo z aktorkć )
- Cartland Barbara MaśÂśźeśÂstwo z przymusu
- D421. Adams Kelly (Jamison Kelly) FaśÂszywa wróśźka
- zanotowane.pl
- doc.pisz.pl
- pdf.pisz.pl
- wpserwis.htw.pl