Podręcznik użytkownika

Korzystanie z produktu DB2 Connect i serwerów aplikacji

Powstanie aplikacji klient/serwer pozwoliło projektantom aplikacji poprawić ich wykorzystanie oraz zmniejszyć koszty przeznaczone na szkolenia, udostępniając użytkownikom interfejs graficzny w takich systemach, jak Windows i OS/2. Jednocześnie pozwoliło na przekazanie funkcji zarządzania bazą danych do stabilnych serwerów baz danych w różnych systemach operacyjnych oraz na różnych platformach sprzętowych.

Model klient/serwer, w którym logika aplikacji rozproszona jest na stacjach roboczych klientów, zwany jest popularnie dwuwarstwową technologią klient/serwer. W modelu dwuwarstwowym aplikacja jest umieszczona w warstwie klienta, natomiast serwer bazy danych implementuje serwer lub warstwę postprocesora. Jak przedstawiono w sekcji Bezpośredni dostęp do baz danych, produkt DB2 Connect zapewnia pełną obsługę dwuwarstwowych aplikacji klient/serwer, w których serwerami bazy danych są DB2 for OS/390, DB2 for MVS/ESA, DB2/400 lub DB2 for VM i VSE.

Wraz ze wzrostem rozmiaru aplikacji klient/serwer okazało się, że dwuwarstwowy model klient/serwer ma poważne ograniczenia. Rozpowszechnianie dużej ilości logiki biznesowej na setkach lub tysiącach klienckich stacji roboczych spowodowało, że zarządzanie zmianami stało się zadaniem skomplikowanym i kosztownym. Każda zmiana zasad biznesowych wymaga wymiany części aplikacji związanej z klientem. Bardzo często taka wymiana aplikacji musi być wykonana w tym samym czasie na wszystkich klienckich stacjach roboczych w przedsiębiorstwie, aby mieć pewność, że zasady biznesowe będą stosowane w spójny sposób.

Inne ograniczenie dwuwarstwowego modelu klient/serwer staje się oczywiste wraz ze wzrostem skali zasobów pochłanianych przez taką aplikację. Rozmieszczanie setek lub tysięcy tłustych klientów, jak nazywa się czasami klientów z dwuwarstwowego modelu, zwiększa wymagania dotyczące mocy przetwarzania i pojemności każdej klienckiej stacji roboczej. Ponadto zwiększają się także wymagania dotyczące serwera baz danych w związku z tym, że każdy klient wymaga dedykowanego połączenia z bazą danych oraz zasobów związanych z koniecznością obsługi takiego połączenia. O ile zależność dwuwarstwowego modelu klient/serwer od rozpowszechniania logiki biznesowej można w pewnym stopniu zredukować, korzystając z procedur zapisanych w bazie, to jednak pozostałych ograniczeń nie można w łatwy sposób rozwiązać, nie wprowadzając zmian w modelu.

Rozwiązanie w postaci serwera aplikacji

W miarę wzrostu kosztów oraz stopnia złożoności dwuwarstwowych aplikacji klient/serwer większość dużych aplikacji zaczęła przechodzić na ścieżkę, wiodącą do wielowarstwowego modelu klient/serwer. W modelu wielowarstwowym rola warstwy bazy danych pozostaje niezmieniona. Jednak warstwa klienta jest uzupełniana przez jedną lub kilka warstw pośrednich, zwykle jest to jedna warstwa pośrednia, stąd też model ten nosi nazwę trójwarstwowego.

W modelu trójwarstwowym klient obsługuje kontakt z użytkownikiem i nie zawiera żadnej logiki biznesowej. Warstwa pośrednia składa się z jednego lub kilku serwerów aplikacji. Zadaniem serwera aplikacji jest dostarczanie stabilnej i wydajnej pod względem kosztów implementacji logiki, leżącej u podstaw procesów i zasad biznesowych. Podobnie jak w przypadku modelu dwuwarstwowego, implementacja zasad biznesowych jest często uzupełniana o wykorzystywanie procedur zapisanych w bazie po to, aby poprawić wydajność.

Ponieważ nie implementuje się już na stacjach roboczych całego ciężaru logiki aplikacji, a stacje robocze zajęte są tylko obsługą użytkowników, wymagania dotyczące zasobów są dla warstwy klienta znacznie zmniejszone. Dlatego też warstwa klienta w modelu trójwarstwowym nazywana jest często chudym klientem. Ponadto, ponieważ scentralizowany serwer aplikacji obsługuje żądania pochodzące od wszystkich klientów, ma on zdolność współużytkowania zasobów, takich jak połączenia z bazą danych między wszystkimi klientami. W związku z tym serwer baz danych nie musi już dłużej obsługiwać dedykowanych połączeń z każdym użytkownikiem aplikacji.

Obecnie w przemyśle istnieje wiele przykładów trójwarstwowych serwerów aplikacji. Prawie wszyscy dostawcy systemów zarządzania zasobami przedsiębiorstwa (ERP - Enterprise Resource Planning) implementują swoje aplikacje w postaci modeli trójwarstwowych, takich jak na przykład aplikacje SAP R/3 lub PeopleSoft V7. Inne przykłady dotyczą wiodących dostawców systemów zarządzania relacjami w przedsiębiorstwie, takich jak na przykład Siebel i Vantive.

Serwery aplikacji i produkt DB2 Connect

Serwery DB2 Connect Enterprise Edition zapewniają obsługę procesu rozmieszczania wielowarstwowych aplikacji. Obsługa zapewniana przez DB2 Connect zawiera różne interfejsy API, za pomocą których można projektować logikę aplikacji (ODBC, ADO, DB2 CLI, wbudowany SQL, JDBC i SQLJ), jak również tworzyć infrastrukturę komunikacyjną dla współpracy z serwerami baz danych rodziny DB2.

Produkt DB2 Connect obsługuje także implementacje, w których warstwa bazy danych składa się z wielu serwerów baz danych rodziny DB2. Umożliwia to serwerom aplikacji implementowanie transakcji, które w ramach jednej transakcji aktualizują dane znajdujące się na wielu serwerach baz danych.

Integralność takich rozproszonych transakcji zapewniana jest przez protokół zatwierdzania dwufazowego, którego obsługę zapewnia produkt DB2 Connect. Na przykład aplikacja może w ramach jednej transakcji aktualizować dane znajdujące się w bazie danych DB2 for OS/390 i DB2 UDB w systemie Windows NT. Jeśli jest zainstalowana i uaktywniona obsługa żądań rozproszonych, to aplikacja może w ramach jednej transakcji czytać z baz danych Oracle i aktualizować bazy danych rodziny DB2.

Na poniższym diagramie zarówno interfejsy API, jak i mechanizmy połączeń między serwerem aplikacji i serwerami baz danych postprocesora zapewniane są przez produkt DB2 Connect Enterprise Edition.


DB2 Connect Support dla serwerów aplikacji

Zaawansowane cechy produktu DB2 Connect, takie jak na przykład pula połączeń (patrz Pula połączeń) oraz koncentrator połączeń (patrz Koncentrator połączeń DB2 Connect) w znacznym stopniu zmniejszają zapotrzebowanie aplikacji na zasoby i upraszczają implementację serwera aplikacji.

DB2 Connect i konfiguracje serwera aplikacji

W przypadku serwerów aplikacji wymagane jest użycie produktu DB2 Connect Enterprise Edition (dostępnego niezależnie lub jako część pakietu produktów DB2 Connect Unlimited Edition). Produktu DB2 Connect Personal Edition nie można używać z serwerami aplikacji i nie jest udzielana licencja na takie wykorzystanie. Ponadto klienci, którzy implementują serwery aplikacji powinni przeczytać warunki dołączone do kopii produktu DB2 Connect, aby dowiedzieć się, jaka jest wymagana liczba licencji dla użytkowników.

Istnieją dwie metody rozmieszczania produktu DB2 Connect w środowisku serwera aplikacji. Instalowanie DB2 Connect Enterprise Edition na:

W większości przypadków zalecanym rozwiązaniem jest instalowanie kopii produktu DB2 Connect na tym samym serwerze, na którym znajduje się serwer aplikacji. Zainstalowanie produktu DB2 Connect na serwerze aplikacji pozwala mu brać udział we wszystkich schematach postępowania po awarii oraz schematach równoważenia obciążenia, które może implementować serwer aplikacji. Taka instalacja może potencjalnie dać lepszą wydajność, ponieważ eliminuje dodatkowe przeskoki w sieci wymagane, jeśli DB2 Connect zostanie zainstalowany na oddzielnym serwerze. Ponadto można dzięki temu uprościć administrację, ponieważ nie trzeba instalować i obsługiwać dodatkowego serwera.

Zainstalowanie produktu DB2 Connect na osobnym serwerze jest dobrym rozwiązaniem w przypadku, gdy DB2 Connect Enterprise Edition nie jest dostępny dla systemów operacyjnych lub platform sprzętowych, na których działa serwer aplikacji. Jeśli na przykład serwer aplikacji zainstalowany jest na serwerze Silicone Graphics (SGI) lub SCO UnixWare, to umieszczenie produktu DB2 Connect na oddzielnym serwerze jest jedyną możliwością, ponieważ dla tych platform DB2 Connect Enterprise Edition nie jest dostępny.


[ Początek strony | Poprzednia strona | Następna strona | Spis treści | Indeks ]