Tomcat_Przewodnik_encyklopedyczny_Wydanie_II_tomcat.pdf

(847 KB) Pobierz
Tomcat. Przewodnik
encyklopedyczny.
Wydanie II
Autor: Jason Brittain, Ian Darwin
T³umaczenie: Piotr Pilch
ISBN: 978-83-246-1594-0
Tytu³ orygina³u:
Tomcat:
The Definitive Guide, 2nd edition
Stron: 490
Poznaj mo¿liwoœci serwera Tomcat!
Jak dostroiæ Tomcat w celu pomiaru i poprawy wydajnoœci?
Jak wdra¿aæ aplikacje WWW z serwletami i stronami JSP?
Jak diagnozowaæ problemy z serwerem?
Tomcat jest kontenerem serwletów Java i serwerem WWW stworzonym przez
organizacjê Apacze Software Foundation. Mo¿e pe³niæ rolê serwera produkcyjnego
o du¿ej wydajnoœci, sprawdza siê równie¿ jako darmowy kontener serwletów i stron
JSP z udostêpnionym kodem Ÿród³owym. Tomcat mo¿e byæ zastosowany niezale¿nie
lub w po³¹czeniu z innymi serwerami WWW (np. httpd Apache). Doskonale radzi sobie
w ka¿dego rodzaju œrodowisku, zapewniaj¹c fundament wymagany do praktycznego
wykorzystania w Internecie umiejêtnoœci z zakresu technologii Java.
W ksi¹¿ce „Tomcat. Przewodnik encyklopedyczny” znajdziesz szczegó³owe wyjaœnienia,
jak korzystaæ z tego serwera. Czytaj¹c j¹, poznasz wszelkie procedury instalacyjne
oraz mo¿liwoœci konfigurowania obszarów, ról, u¿ytkowników i zasobów JNDI. Nauczysz
siê, jak uaktywniaæ i wy³¹czaæ funkcjê automatycznego prze³adowywania serwletów,
a tak¿e wdra¿aæ aplikacje WWW. Niezbêdne informacje dotycz¹ce serwera Tomcat
znajd¹ tu nie tylko programiœci, ale tak¿e administratorzy, webmasterzy i wszyscy,
którzy chc¹ siê dowiedzieæ czegoœ o tym kontenerze serwletów.
Instalowanie i konfigurowanie Tomcata
Zarz¹dzanie obszarami, rolami i u¿ytkownikami
Uruchamianie i zatrzymywanie serwera
Kontrolowanie i utrwalanie sesji
Optymalizowanie wydajnoœci serwera
Integracja z serwerem WWW Apache
Wdra¿anie rozpakowanego katalogu aplikacji WWW
Praca z plikami WAR
Zabezpieczenia serwera Tomcat
Wydawnictwo Helion
ul. Koœciuszki 1c
44-100 Gliwice
tel. 032 230 98 63
e-mail: helion@helion.pl
Przewodnik dla wszystkich, którzy chc¹ u³atwiæ sobie pracê z serwerem Tomcat
Spis treści
Przedmowa ...............................................................................................................................9
1. Tomcat — wprowadzenie ............................................................................................17
Instalowanie Tomcata
Uruchamianie, zatrzymywanie i ponowne
ładowanie
serwera Tomcat
Automatyczne uruchamianie
Testowanie instalacji serwera Tomcat
Skąd się wziął Tomcat?
17
32
44
50
51
2. Konfigurowanie Tomcata ...........................................................................................53
Coś na temat użycia serwera WWW Apache
Zmiana lokalizacji katalogu aplikacji WWW
Zmiana numeru portu 8080 na inny
Konfigurowanie wirtualnej maszyny Java
Zmiana kompilatora stron JSP
Zarządzanie obszarami, rolami i użytkownikami
Kontrolowanie sesji
Uzyskiwanie dostępu do zasobów JNDI i JDBC
Automatyczne ponowne
ładowanie
serwletów
Dostosowywanie katalogów użytkowników
Przykładowe aplikacje serwera Tomcat
Interfejs CGI
Aplikacja WWW administrująca serwerem Tomcat
53
54
57
65
69
70
84
90
92
92
93
94
95
3. Wdrażanie w obrębie serwera Tomcat aplikacji WWW
z serwletami i stronami JSP ........................................................................................101
Struktura aplikacji WWW
Wdrażanie rozpakowanego katalogu aplikacji WWW
Wdrażanie pliku WAR
Wdrażanie „na gorąco”
Praca z plikami WAR
Aplikacja Manager
Automatyzowanie za pomocą narzędzia Apache Ant
Dowiązania symboliczne
107
110
114
119
121
122
125
138
5
4. Optymalizowanie wydajności serwera Tomcat ........................................................141
Pomiar wydajności serwera WWW
Zewnętrzne dostrajanie
Wewnętrzne dostrajanie
Planowanie obciążenia
Dodatkowe
źródła
informacji
142
167
170
178
181
5. Integracja z serwerem WWW Apache ...................................................................... 183
Zalety i wady integracji
Instalowanie serwera httpd Apache
Integrowanie serwera Apache z Tomcatem
184
189
191
6. Zabezpieczenia serwera Tomcat .............................................................................. 215
Zabezpieczanie systemu
Wiele modeli zabezpieczeń serwera
Zastosowanie narzędzia SecurityManager
Nadawanie uprawnień do plików
Tworzenie „klatki” narzędzia chroot Tomcata
Odfiltrowywanie danych wprowadzonych
przez użytkownika ze złymi zamiarami
Zabezpieczanie serwera Tomcat za pomocą protokołu SSL
216
218
219
223
227
237
255
7. Konfiguracja ................................................................................................................271
Plik server.xml
Plik web.xml
Plik tomcat-users.xml
Plik catalina.policy
Plik catalina.properties
Plik context.xml
272
329
345
346
346
348
8. Rozwiązywanie problemów i debugowanie ...........................................................349
Analizowanie plików dzienników
Szukanie błędów
Adresy URL i komunikacja HTTP
Debugowanie za pomocą narzędzia RequestDumperValve
Gdy nie udaje się wyłączyć serwera Tomcat
349
350
351
355
356
9. Tworzenie binariów serwera Tomcat z kodu
źródłowego
...................................... 361
Instalowanie oprogramowania Apache Ant
Uzyskiwanie kodu
źródłowego
Pobieranie dodatkowych bibliotek
Budowanie serwera Tomcat
362
363
365
366
6
|
Spis treści
10. Klaster węzłów z serwerem Tomcat ........................................................................369
Pojęcia związane z klastrem
Proces komunikacji związany z
żądaniem
HTTP
Rozproszone kontenery serwletów Java
Implementacja klastra w serwerze Tomcat 6
Dystrybucja
żądań
JDBC i przełączanie po awarii
Dodatkowe
źródła
informacji
370
371
381
385
402
402
11. Podsumowanie ..........................................................................................................405
Dodatkowe zasoby
Społeczność
405
408
A Instalowanie
środowiska
uruchomieniowego Java .................................................411
Wybieranie pakietu JDK
Radzenie sobie ze starszymi wirtualnymi maszynami Java pakietów GCJ i Kaffe
Sun Microsystems Java SE JDK
IBM J9 JDK
BEA JRockit JDK
Apple Java SE JDK
Excelsior JET
Apache Harmony JDK
412
413
416
417
418
419
420
423
B Plik jbchroot.c ............................................................................................................425
C Plik BadInputValve.java ............................................................................................ 431
D Plik BadInputFilter.java .............................................................................................439
E Pliki pakietu RPM ....................................................................................................... 451
Skorowidz ............................................................................................................................. 471
Spis treści
|
7
ROZDZIAŁ 4.
Optymalizowanie
wydajności serwera Tomcat
Po zainstalowaniu i uruchomieniu serwera Tomcat Czytelnik prawdopodobnie będzie chciał
zoptymalizować jego wydajność,
żeby
efektywniej obsługiwał
żądania
trafiające do komputera.
W tym rozdziale przedstawimy kilka pomysłów dotyczących optymalizowania wydajności
środowiska
uruchomieniowego i samego serwera Tomcat.
Sztuka dostrajania serwera jest złożonym zadaniem. Składa się z pomiaru, analizy, modyfi-
kacji i ponownie pomiaru. Oto podstawowe kroki procesu optymalizowania:
1.
Zdecydowanie, co ma być zmierzone.
2.
Określenie metody pomiaru.
3.
Pomiar.
4.
Przeanalizowanie wniosków wynikających z uzyskanych informacji.
5.
Zmodyfikowanie konfiguracji przy wykorzystaniu metod, które powinny poprawić osiągi.
6.
Pomiar i porównanie wyników z poprzednio uzyskanymi.
7.
Ponowne zrealizowanie kroku 4.
Warto zauważyć (co zresztą widać),
że
nie jest dostępna klauzula „wyjścia z pętli” (być może
odzwierciedlająca rzeczywistość). W praktyce trzeba będzie określić próg, poniżej którego
mniej istotne zmiany będą tak mało znaczące,
że
będzie można zająć się innymi codziennymi
zmartwieniami. Dostosowywanie i pomiar można zakończyć, gdy uzyska się przekonanie,
że
wystarczająco bliskie są czasy odpowiedzi, które spełnią postawione wymagania.
Aby zdecydować, co należy zoptymalizować w celu osiągnięcia lepszej wydajności, powinno
się przeprowadzić niżej opisane działania.
Na komputerze testowym należy uruchomić serwer Tomcat tak samo skonfigurowany jak
w przypadku
środowiska
produkcyjnego. Warto zastosować taki sam sprzęt, system operacyj-
ny, bazę danych itp. Im bardziej
środowisko
testowe będzie przypominać produkcyjne, tym
większe będą szanse zidentyfikowania wąskich gardeł, które pojawią się w konfiguracji
śro-
dowiska produkcyjnego.
141
Zgłoś jeśli naruszono regulamin