httpSessionDatabase - Baza danych sesji HTTP (httpSessionDatabase)

Steruje sposobem utrwalania sesji HTTP w bazie danych.

NameTypeDefaultDescription
dataSourceRefstringIdentyfikator źródła danych używanego przez menedżer sesji do utrwalania danych sesji HTTP.
tableNamestringsessionsNazwa tabeli bazy danych.
useMultiRowSchemabooleanfalsePo włączeniu każdy atrybut danych sesji jest umieszczany w oddzielnym wierszu w bazie danych. Umożliwia to przechowywanie większej ilości danych każdej sesji. Ta konfiguracja może poprawić wydajność, gdy atrybuty sesji są bardzo duże i trzeba wprowadzić kilka zmian do atrybutów. Po wyłączeniu wszystkie atrybuty danych sesji są umieszczane w tym samym wierszu.
skipIndexCreationbooleanfalseTę właściwość należy ustawić na wartość true, aby wyłączyć tworzenie indeksu podczas uruchamiania serwera. Tej właściwości niestandardowej należy użyć tylko wtedy, gdy mają zostać ręcznie utworzone własne indeksy bazy danych na potrzeby trwałości sesji. Zaleca się jednak, aby pozwolić menedżerowi sesji utworzyć indeksy bazy danych. Przed włączeniem tej właściwości, upewnij się, że poprawny indeks istnieje w bazie danych sesji.
writeFrequency
  • MANUAL_UPDATE
  • TIME_BASED_WRITE
  • END_OF_SERVLET_SERVICE
END_OF_SERVLET_SERVICEOkreśla moment zapisania danych sesji w trwałej składnicy. Domyślnie dane sesji są zapisywane w trwałej składnicy po zakończeniu wykonywania przez serwlet. W przypadku niektórych środowisk zmiana tej wartości może zwiększyć wydajność.
MANUAL_UPDATE
Zapisanie danych w trwałej składnicy wymaga programowej synchronizacji obiektu IBMSession.
TIME_BASED_WRITE
Dane sesji są zapisywane w trwałej składnicy w podanych przedziałach czasu.
END_OF_SERVLET_SERVICE
Dane sesji są zapisywane w trwałej składnicy po zakończeniu wykonywania przez serwlet.
writeIntervalOkres z dokładnością do sekundy2mLiczba sekund poprzedzająca zapisanie danych sesji do trwałej składnicy. Wartość domyślna wynosi 120 sekund. Ta wartość jest używana tylko wtedy, gdy włączona jest częstotliwość zapisu oparta na czasie. Określ dodatnią liczbę całkowitą, po której następuje jednostka czasu, taka jak godziny (h), minuty (m) lub sekundy (s). Na przykład określ 30 sekund jako 30s. W pojedynczej pozycji można zawrzeć wiele wartości. Na przykład 1m30s oznacza 90 sekund.
writeContents
  • ONLY_UPDATED_ATTRIBUTES
  • ALL_SESSION_ATTRIBUTES
ONLY_UPDATED_ATTRIBUTESOkreśla, ile danych sesji powinno być zapisanych w trwałej składnicy. Domyślnie zapisywane są tylko zaktualizowane atrybuty, ale można również zapisywać wszystkie atrybuty (niezależnie od tego, czy zostały zmienione).
ONLY_UPDATED_ATTRIBUTES
W trwałej składnicy będą zapisywane tylko zaktualizowane atrybuty.
ALL_SESSION_ATTRIBUTES
W trwałej składnicy będą zapisywane wszystkie atrybuty.
scheduleInvalidationbooleanfalseTę opcję należy włączyć, aby zmniejszyć liczbę aktualizacji bazy danych wymaganych do podtrzymania aktywności sesji HTTP. Należy podać dwie godziny dnia, w których aktywność serwera aplikacji jest najmniejsza. Po wyłączeniu tej opcji proces programu unieważniającego będzie uruchamiany co kilka minut, aby usunąć unieważnione sesje HTTP.
scheduleInvalidationFirstHourint0Wskazuje pierwszy termin usuwania unieważnionych sesji z trwałej składnicy. Wartość musi być liczbą całkowitą z zakresu od 0 do 23. Ta wartość ma znaczenie tylko wtedy, gdy funkcja harmonogramu unieważniania jest włączona.
scheduleInvalidationSecondHourint0Wskazuje drugi termin usuwania unieważnionych sesji z trwałej składnicy. Wartość musi być liczbą całkowitą z zakresu od 0 do 23. Ta wartość ma znaczenie tylko wtedy, gdy funkcja harmonogramu unieważniania jest włączona.
noAffinitySwitchBackbooleanfalseTę wartość należy ustawić na true, jeśli powinowactwo z nowym elementem ma być zachowywane, mimo powrotu pierwotnego elementu. W przypadku awarii elementu klastra jego żądania są kierowane do innego elementu klastra, a sesje są aktywowane na tym innym elemencie. Powinowactwo sesji jest więc utrzymywane z nowym elementem, a po przywróceniu pierwotnego elementu klastra żądania sesji utworzone na pierwotnym elemencie klastra są kierowane z powrotem do przywróconego elementu. Dozwolone wartości to true i false, a wartość domyślna to false. Dla tej właściwości należy ustawić wartość true w przypadku sesji rozproszonych skonfigurowanych z zapisem na podstawie czasu. W przypadku wyłączenia sesji rozproszonych ta właściwość nie ma wpływu na zachowanie.
useInvalidatedIdbooleantruePo ustawieniu tej właściwości na wartość true przychodzące identyfikatory będą wykorzystywane ponownie, jeśli sesja z danym identyfikatorem została niedawno unieważniona. Optymalizuje to wydajność, ponieważ zapobiega sprawdzaniu trwałej składnicy.
onlyCheckInCacheDuringPreInvokebooleanfalseWartość true oznacza, że czas ostatniego dostępu do sesji powinien być aktualizowany tylko wtedy, gdy żądanie uzyska sesję. Wartość false oznacza, że czas ostatniego dostępu do sesji powinien być aktualizowany przy każdym żądaniu. W przypadku niektórych środowisk zmiana tej wartości może zwiększyć wydajność.
optimizeCacheIdIncrementsbooleantrueJeśli sesja przeglądarki użytkownika przełącza się między wieloma aplikacjami WWW, można zaobserwować dodatkową aktywność trwałej składnicy, ponieważ sesje w pamięci dla modułu WWW są odświeżane z trwałej składnicy. Dlatego identyfikatory pamięci podręcznej nieustannie zwiększają się, a atrybuty sesji przechowywanej w pamięci są zastępowane atrybutami pochodzącymi z trwałej kopii. Tę właściwość należy ustawić na wartość true, aby zapobiec ciągłemu zwiększaniu identyfikatorów pamięci podręcznej. Wartość true oznacza, że menedżer sesji powinien oceniać, czy przechowywana w pamięci sesja dla modułu WWW jest starsza niż kopia w trwałej składnicy. W przypadku konfiguracji klastrowej należy jak najdokładniej zsynchronizować czasy systemowe na wszystkich elementach klastra.
db2RowSize
  • 32KB
  • 4KB
  • 16KB
  • 8KB
4KBWielkość strony obszaru tabel skonfigurowanego dla tabeli sesji, jeśli jest używana baza danych DB2. W przypadku niektórych środowisk zwiększenie tej wartości może zwiększyć wydajność bazy danych.
32KB
Użyj strony obszaru tabel o wielkości 32 kB. Należy dodatkowo utworzyć pulę buforów i obszar tabel bazy danych DB2 i dla obu obiektów podać 32 kB jako wielkość strony. Dodatkowo należy podać nazwę utworzonego obszaru tabel.
4KB
Użyj domyślnej wielkości strony obszaru tabel (4 kB). Nie trzeba tworzyć puli buforów ani obszaru tabel bazy danych DB2. Nie trzeba też określać nazwy obszaru tabel.
16KB
Użyj strony obszaru tabel o wielkości 16 kB. Należy dodatkowo utworzyć pulę buforów i obszar tabel bazy danych DB2 i dla obu obiektów podać 16 kB jako wielkość strony. Dodatkowo należy podać nazwę utworzonego obszaru tabel.
8KB
Użyj strony obszaru tabel o wielkości 8 kB. Należy dodatkowo utworzyć pulę buforów i obszar tabel bazy danych DB2 i dla obu obiektów podać 8 kB jako wielkość strony. Dodatkowo należy podać nazwę utworzonego obszaru tabel.
tableSpaceNamestringObszar tabel używany dla tabel sesji. Ta wartość jest wymagana tylko wtedy, gdy wielkość wiersza DB2 jest większa niż 4 kB.
usingCustomSchemaNamebooleanfalseTę właściwość należy ustawić na wartość true, jeśli na potrzeby trwałości sesji jest używana baza danych DB2, a w źródle danych jest ustawiona właściwość currentSchema.
useOracleBlobbooleanfalsePo ustawieniu tej właściwości na wartość true zostanie utworzona tabela bazy danych, w której środkowa kolumna będzie miała typ danych BLOB (Binary Large Object). Ta wartość zwiększa wydajność trwałych sesji w przypadku używania baz danych Oracle. Z powodu ograniczeń wprowadzonych przez Oracle obsługa typu BLOB wymaga użycia sterownika bazy danych OCI (Oracle Call Interface) dla danych o wielkości przekraczającej 4000 bajtów. Ponadto należy się upewnić, że przed zrestartowaniem serwera jest tworzona nowa tabela sesji. W tym celu trzeba usunąć starą tabelę sesji lub zmienić definicję źródła danych, aby wskazywało bazę danych niezawierającą tabeli sesji.