Właściwości źródła danych serwera WebSphere Application Server

Na tej stronie można ustawić zaawansowane właściwości źródła danych serwera aplikacji. Właściwości te umożliwiają aktywowanie i konfigurowanie usług stosowanych przez serwer aplikacji do źródeł danych w celu dostosowania jego połączeń. Właściwości te nie wpływają na połączenia w bazie danych.

Aby uzyskać dostęp do tej strony Konsoli administracyjnej, należy użyć jednej z następujących ścieżek:
Wielkość pamięci podręcznej instrukcji

Określa liczbę instrukcji dodawanych do pamięci w każdym połączeniu. Serwer aplikacji buforuje instrukcję po jej zamknięciu przez użytkownika.

Źródło danych serwera WebSphere Application Server optymalizuje przetwarzanie przygotowanych instrukcji i instrukcji wywoływalnych, buforując te instrukcje, które nie są używane w aktywnym połączeniu. Oba typy instrukcji pomagają zmaksymalizować wydajność transakcji wykonywanych między aplikacją a składnicą danych.
  • Przygotowana instrukcja jest wstępnie skompilowaną instrukcją SQL przechowywaną w obiekcie PreparedStatement. Za pomocą tego obiektu serwer aplikacji uruchamia wiele razy instrukcję SQL zgodnie z wymaganiami aplikacji w czasie wykonywania i z wartościami określonymi w czasie wykonywania.
  • Instrukcja wywoływalna jest instrukcją SQL zawierającą wywołanie do składowanej procedury stanowiącej serię wstępnie skompilowanych instrukcji, przeznaczonych do wykonania czynności i zwrócenia wyników. Instrukcja ta jest przechowywana w obiekcie CallableStatement. Za pomocą tego obiektu serwer aplikacji uruchamia wiele razy procedurę składowaną zgodnie z wymaganiami aplikacji w czasie wykonywania i z wartościami określonymi w czasie wykonywania.

Jeśli pamięć podręczna instrukcji jest niewystarczająca, niektóre wpisy są usuwane, aby pomieścić nowe wpisy. Aby określić najwyższą wartość wielkości pamięci podręcznej i zapobiec usuwaniu wpisów, należy dodać liczbę unikalnych przygotowanych instrukcji i instrukcji wywoływalnych (na podstawie łańcucha SQL, współbieżności i typu przewijania) dla każdej aplikacji używającej danego źródła danych na danym serwerze. Wartość ta będzie maksymalną liczbą możliwych instrukcji, które mogą być buforowane dla danego połączenia przez cały czas pracy serwera. Ustawienie tej wartości dla wielkości pamięci podręcznej powoduje, że instrukcje nie będą usuwane. Z reguły należy konfigurować większą pamięć podręczną dla aplikacji o większej liczbie instrukcji.

[AIX Solaris HP-UX Linux Windows] [iSeries] Aby ograniczyć liczbę instrukcji usuwanych z pamięci podręcznej, można także skorzystać z przeglądarki Tivoli Performance Viewer. Należy zastosować standardowe obciążenie, reprezentujące typową ilość przychodzących żądań klienta, stałą liczbę iteracji i zestaw standardowy ustawień konfiguracyjnych.
Uwaga: Im większa jest pamięć podręczna instrukcji, tym więcej zasobów systemu zostaje opóźnionych. Zatem w przypadku ustawienia zbyt dużej liczby może zabraknąć zasobów, ponieważ system nie będzie mógł otworzyć wielu przygotowanych instrukcji.

Jeśli serwer aplikacji nie powinien buforować konkretnej instrukcji, należy skonfigurować wskazówkę zdolności instrukcji do tworzenia zestawów na opcję false. Serwer aplikacji nie buforuje instrukcji, jeśli zdolność do tworzenia zestawów jest ustawiona na opcję false. Aplikacja określa zdolność instrukcji do tworzenia zestawów w czasie wykonywania.

W aplikacjach testowych dostrojenie pamięci podręcznej instrukcji powoduje poprawę przepustowości o od 10% do 20%. Jednak ze względu na możliwe ograniczenia zasobów, taka poprawa może nie być możliwa.

Typ danych Integer
Wartość domyślna Wartości domyślne zależą od bazy danych. Zwykle jest to wartość 10. W wersjach bazy danych Informix 7.3, 9.2, 9.3 i 9.4 bez najnowszych poprawek wartość domyślna musi być ustawiona na 0. Wartość domyślna równa 0 oznacza, że nie ma pamięci podręcznej instrukcji.
Włącz wykrywanie wielowątkowych dostępów

Zaznaczenie tej opcji powoduje, że serwer aplikacji wykrywa dostęp przy użyciu wielu wątków.

Włącz ponowne uwierzytelnianie bazy danych

Wskazuje, że w połączeniach pobieranych z puli połączeń serwera aplikacji nie może istnieć dokładna zgodność (kryteria wyszukiwania puli połączeń nie uwzględniają nazwy użytkownika ani hasła). Zamiast tego ponowne uwierzytelnianie połączenia odbywa się w metodzie doConnectionSetupPerTransaction() klasy DataStoreHelper. Serwer aplikacji nie udostępnia implementacji ponownego uwierzytelniania połączenia w czasie wykonywania. Jeśli to pole wyboru zostanie zaznaczone, należy rozszerzyć klasę DataStoreHelper w celu udostępnienia implementacji metody doConnectionSetupPerTransaction(), w której odbywa się ponowne uwierzytelnienie. Jeśli proces ten nie zostanie zakończony, serwer może zwrócić połączenia, których nie można wykorzystać. Więcej informacji można znaleźć w dokumentacji interfejsu API na temat metody com.ibm.websphere.rsadapter.DataStoreHelper#doConnectionSetupPerTransaction.

Ponowne uwierzytelnianie połączenia pozwala poprawić wydajność przez zmniejszenie nakładu pracy wymaganej do otwierania i zamykania połączeń, szczególnie w przypadku aplikacji, które często żądają połączeń przy użyciu różnych nazw użytkownika i haseł.
Unikanie problemów: Ponownego uwierzytelniania bazy danych nie można włączyć, jeśli jako alias konfiguracji odwzorowania wybrano obiekt TrustedConnectionMapping.gotcha
Włącz obsługę jednofazowej optymalizacji usługi JMS

Zaznaczenie tej opcji powoduje, że serwer aplikacji zezwala usłudze JMS (Java Messaging Service) na uzyskiwanie zoptymalizowanych połączeń z tego źródła danych. Ta właściwość uniemożliwia aplikacjom JDBC (Java Database Connectivity) współużytkowanie połączeń z aplikacjami CMP.

Zarządzaj buforowanymi uchwytami

Określa, czy kontener śledzi buforowane uchwyty, które są uchwytami połączeń utrzymywanymi przez komponent aplikacji w stanie aktywności w ramach transakcji i metod. Właściwość ta służy do debugowania problemów z połączeniami, jednak śledzenie uchwytów może powodować znaczne obniżenie wydajności w czasie wykonywania.

Jeśli w Konsoli administracyjnej zaznaczono właściwość Zarządzaj buforowanymi uchwytami, a następnie wybór ten zostanie anulowany, to pole nie będzie już widoczne dla zasobów w wersji 7.0 serwera aplikacji. Pole to jest wyświetlane tylko wtedy, gdy właściwość manageCachedHandles w pliku resources.xml ma wartość true. Aby udostępnić to pole, w pliku resources.xml należy zmienić wartość pozycji manageCachedHandles z false na true lub wprowadzić następującą komendę Jython, korzystając z narzędzia wsadmin:
AdminConfig.modify(myDataSourceVariable, '[[manageCachedHandles "true"]]')
Obsługiwane konfiguracje: Dla wszystkich zasobów uruchomionych na serwerze aplikacji w wersji 6.x właściwość Zarządzaj buforowanymi uchwytami będzie zawsze widoczna. Jeśli na przykład istnieje węzeł w wersji 6.1, pozycja w pliku resources.xml nie ma wpływu na wyświetlanie tego pola w Konsoli administracyjnej. sptcfg
Inną metodą debugowania problemów jest zastosowanie wielowątkowych i międzykomponentowych alertów diagnostycznych w celu wykrywania naruszeń modelu programistycznego JCA (Java Connectivity Architecture). Aby aktywować te alerty, należy wybrać odpowiednie opcje na panelu Serwery > Serwery aplikacji > serwer_aplikacji > Wydajność > Konfiguracja produktu Performance and Diagnostic Advisor > Konfiguracja porady diagnostycznej lub dotyczącej wydajności. Alerty te wymuszają zarządzanie buforowanymi uchwytami, wykrywanie warunków połączeń i wysyłanie alertów przez menedżer połączeń.
Uwaga: Aby aktywować te alerty, należy także wybrać opcję Włącz strukturę produktu Performance and Diagnostic Advisor (Runtime Performance Advisor) na panelu Serwery > Serwery aplikacji > serwer_aplikacji > Wydajność > Konfiguracja produktu Performance and Diagnostic Advisor.
Protokołowanie brakującego kontekstu transakcji

Określa, czy kontener generuje wpisy w dzienniku czynności, jeśli aplikacja uzyskuje połączenie bez kontekstu transakcji. Są to wyjątki w ramach wymagań połączenia modelu programistycznego Java EE (Java Platform, Enterprise Edition).

Źródło danych inne niż transakcyjne
Określa, że serwer aplikacji nie będzie uwzględniać połączeń z tego źródła danych w transakcjach globalnych ani lokalnych. Aplikacje muszą jawnie używać wywołania setAutoCommit(false) na połączeniu, jeśli mają uruchomić lokalną transakcję na połączeniu, a także muszą zatwierdzić lub wycofać transakcję, którą uruchomiły.
Unikanie problemów: Chociaż właściwości tej należy przypisywać wartość true tylko w niektórych sytuacjach, interfejs JPA (Java Persistence API) wymaga zarówno źródeł danych JTA, jak i innych niż JTA.gotcha
Użyj modelu sprawdzania wyjątków serwera WebSphere Application Server

Określa, że do identyfikowania błędów serwer aplikacji używa narzędzia do odwzorowywania błędów zdefiniowanego w programie pomocy składnicy danych. Serwer aplikacji nie zastępuje wyjątków zgłaszanych przez sterownik JDBC wyjątkami zdefiniowanymi w odwzorowaniu błędów programu pomocy składnicy danych.

Użyj modelu odwzorowania wyjątków serwera WebSphere Application Server

Określa, że do identyfikowania błędów serwer aplikacji używa narzędzia do odwzorowywania błędów zdefiniowanego w programie pomocy składnicy danych. Serwer aplikacji będzie zastępował wyjątki zgłaszane przez sterownik JDBC wyjątkami zdefiniowanymi w odwzorowaniu błędów programu pomocy składnicy danych.

Obsługiwane konfiguracje: Ten model wykrywania błędów działa z interfejsem JDBC w wersji 3.0 lub wcześniejszej.sptcfg
Sprawdzaj poprawność nowych połączeń

Określa, czy menedżer połączeń testuje nowo utworzone połączenia z bazą danych.

Liczba prób

Określa, ile razy należy ponawiać nawiązanie początkowego połączenia z bazą danych w sytuacji, gdy nie powiedzie się pierwsza operacja testowania.

Odstęp czasu między próbami

Jeśli opcja Sprawdzaj poprawność nowych połączeń zostanie wybrana, ta opcja umożliwia określenie liczby sekund oczekiwania przed podjęciem ponownej próby nawiązania połączenia przez serwer, jeśli pierwsza próba nie powiedzie się.

Sprawdzaj poprawność istniejących połączeń znajdujących się w puli

Określa, czy menedżer połączeń testuje ważność zestawionych połączeń przed zwróceniem ich do aplikacji.

Odstęp czasu między próbami

Jeśli zostanie wybrana opcja Wstępnie testuj istniejące połączenia znajdujące się w puli, będzie można określić czas w sekundach przeznaczony na sprawdzanie poprawności połączenia przez sterownik JDBC.

Sprawdzanie poprawności przy użyciu sterownika JDBC

Określa, że serwer aplikacji do sprawdzania połączeń będzie używać sterownika JDBC. Z opcji tej można korzystać pod warunkiem, że dostawca JDBC obsługuje interfejs JDBC w wersji 4.0 lub nowszej.

Unikanie problemów: W przypadku źródła danych Oracle pole Sprawdzanie poprawności przy użyciu sterownika JDBC jest wyświetlane w Konsoli administracyjnej jedynie po dodaniu właściwości validateNewConnectionTimeout do zbioru właściwości niestandardowych w ramach właściwości źródła danych serwera WebSphere Application Server. Właściwość validateNewConnectionTimeout jest używana podczas sprawdzania poprawności wykonywanego przez sterownik JDBC 4.0 i może zostać określona przy użyciu Konsoli administracyjnej.gotcha
Limit czasu
Określa limit czasu w sekundach na potrzeby testowania połączeń z bazą danych (zarówno nowych, jak i zestawianych przez serwer aplikacji). Jeśli limit czasu zostanie przekroczony przed sprawdzeniem poprawności, połączenie zostanie uznane za niezdatne do użycia. Jeśli skonfigurowane są ponowne próby, pełna wartość limitu czasu odnosi się do każdej z nich. Wartość 0 oznacza, że sterownik JDBC nie narzuca żadnego limitu czasu na próby sprawdzania poprawności.
Obsługiwane konfiguracje: Ta opcja jest dostępna tylko dla sterowników JDBC zgodnych ze specyfikacją JDBC 4.0.sptcfg
Sprawdzanie poprawności przez zapytanie SQL (nieaktualne)

Określa instrukcję SQL wysyłaną przez serwer aplikacji do bazy danych w celu przetestowania połączenia. Należy użyć takiego zapytania, które będzie miało jak najmniejszy wpływ na wydajność.

Optymalizacja dla wzorca get/use/close/connection za pomocą heterogenicznego zestawiania połączeń

Określa, że serwer aplikacji będzie używać wzorca get/use/close/connection. Wzorzec ten umożliwia współużytkowanie połączeń znajdujących się w tej samej transakcji przez zestawianie połączeń serwera aplikacji. Ten wzorzec optymalizacji sprawia, że jedno połączenie może być współużytkowane podczas transakcji nawet wtedy, gdy połączenia korzystają z różnych właściwości połączenia.

Funkcja heterogenicznego zestawiania połączeń umożliwia rozszerzenie definicji źródła danych, tak aby można było określić inne właściwości niestandardowe lub umożliwić nadpisywanie właściwości innych niż podstawowe dla źródła danych przez aplikacje.

Obsługiwane konfiguracje: To pole jest dostępne tylko dla źródeł danych DB2.sptcfg
Odstęp czasu między próbami przekierowania klienta

Określa czas w sekundach między ponownymi próbami automatycznego przekierowania klienta.

Obsługiwane konfiguracje: To pole jest dostępne tylko dla źródeł danych DB2.sptcfg
Maksymalna liczba prób przekierowania klienta

Określa maksymalną liczbę ponownych prób nawiązania połączenia podejmowanych przez funkcję automatycznego przekierowania klienta, jeśli podstawowe połączenie z serwerem zostanie utracone. Ta właściwość jest używana tylko wtedy, gdy jest ustawiona właściwość Odstęp czasu między próbami przekierowania klienta.

Obsługiwane konfiguracje: To pole jest dostępne tylko dla źródeł danych DB2.sptcfg
Nazwy alternatywnych serwerów
Określa listę zawierającą nazwę lub nazwy alternatywnych serwerów dla serwera DB2. Jeśli określono kilka nazw alternatywnego serwera, muszą one być oddzielone przecinkami. Na przykład:
host1,host2
Obsługiwane konfiguracje: To pole jest dostępne tylko dla źródeł danych DB2.sptcfg
Numery alternatywnych portów
Określa listę portów serwera alternatywnego dla serwera DB2. Jeśli określono kilka alternatywnych portów serwera, muszą one być oddzielone przecinkami. Na przykład:
5000,50001
Obsługiwane konfiguracje: To pole jest dostępne tylko dla źródeł danych DB2.sptcfg
Nazwa JNDI listy serwerów przekierowania klienta

Określa nazwę JNDI służącą do powiązania listy serwerów przekierowania klienta DB2 z przestrzenią nazw JNDI. Serwer bazy danych DB2 używa tej nazwy do wyszukiwania na liście nazw alternatywnych serwerów, jeśli pamięć nie zawiera informacji o alternatywnych serwerach. Ta opcja nie jest obsługiwana w przypadku źródeł danych typu 2.

Obsługiwane konfiguracje: To pole jest dostępne tylko dla źródeł danych DB2.sptcfg
Usuń powiązanie listy przekierowania klienta z nazwą JNDI

Właściwość używana tylko z połączeniem testowym. Jeśli jest ustawiona na wartość true, po nawiązaniu połączenia testowego zostanie usunięte powiązanie nazwy JNDI listy serwerów przekierowania klienta z przestrzenią nazw JNDI.

Obsługiwane konfiguracje: To pole jest dostępne tylko dla źródeł danych DB2.sptcfg



Zaznaczone odsyłacze (online) wymagają dostępu do Internetu.

Pojęcia pokrewne
Zadania pokrewne
Odsyłacze pokrewne
Ustawienia właściwości niestandardowych


Nazwa pliku: udat_jdbcdatasorprops.html