Wprowadzenie
W tym artykule przedstawiono informacje dotyczące podstawowej konfiguracji systemu Comarch ERP Enterprise. Ustawienia wymienione w poniższej liście kontrolnej optymalizują wydajność systemu.
Grupa docelowa
- Administratorzy
- Konsultanci techniczni
Lista kontrolna
Należy uwzględnić poniższe ustawienia i sugestie dla każdego systemu produkcyjnego. Nowe i już istniejące systemy są regularnie sprawdzane zgodnie z tą listą kontrolną. Lista kontrolna zawiera ustawienia podstawowe.
Używanie tylko pamięci RAM
Konieczne jest, aby każdy komputer, na którym działa Serwer Aplikacji Systemu ERP (SAS), dysponował wystarczającą ilością fizycznej pamięci operacyjnej, aby umożliwić pełne wykonywanie wszystkich SAS i innych usług w fizycznej pamięci operacyjnej.
Wydajność systemu zostaje wyraźnie obniżona, jeśli SAS lub inne usługi są przenoszone do wirtualnej pamięci na systemie dyskowym. Dalsze optymalizacje wydajności są nieskuteczne, dopóki nie jest dostępna wystarczająca ilość fizycznej pamięci operacyjnej.
Ustawienia JVM
Użyj prawidłowych ustawień parametrów dla wirtualnej maszyny Java (JVM). Zostały one opisane w dokumentacji Ustawienia JVM.
Sprawdzenie konfiguracji serwera aplikacji
Należy sprawdzić konfigurację Serwera Aplikacyjnego w aplikacji Panel System. Artykuł Panel System zawiera wytyczne dotyczące standardowej konfiguracji Serwera Aplikacyjnego. Należy zwrócić szczególną uwagę na poniższe punkty:
Ustawienie połączeń z bazą danych
Należy ustawić odpowiednią liczbę połączeń z bazą danych. Jest to zależne od sposobu wykorzystania Serwera Aplikacyjnego.
Liczba używanych wątków
Należy pamiętać, że komputer może przetwarzać tylko ograniczoną liczbę wątków jednocześnie. W związku z tym należy ograniczyć liczbę wątków w kolejkach przetwarzania. Nie należy konfigurować zbyt wielu kolejek przetwarzania na jednym Serwerze Aplikacyjnym.
Konfiguracja dostępu ODBC
W systemie produkcyjnym Serwer Aplikacyjny, do którego uzyskuje dostęp Menedżer Wydruków Systemu ERP (SOM), powinien mieć nieograniczony dostęp ODBC. Ograniczony dostęp ODBC oszczędza zasoby na Serwerze Aplikacyjnym, ale zwiększa obciążenie bazy danych podczas dostępu ODBC do tego Serwera Aplikacyjnego w trakcie eksploatacji produkcyjnej.
Ustawienie partycji pamięci podręcznej
Należy prawidłowo ustawić partycje pamięci podręcznej dla każdego Serwera Aplikacyjnego w systemie produkcyjnym.
-
Jeśli Partycje Pamięci Podręcznej są za małe, wzrasta liczba dostępów do bazy danych z powodu zbyt niskiego współczynnika trafień.
-
Im wyższe obciążenie systemu, tym silniejszy jest negatywny wpływ zbyt małej pamięci podręcznej na wydajność całego systemu.
Więcej informacji na temat ustawiania współdzielonej pamięci podręcznej można znaleźć w artykule Shared-Cache-Management oraz w artykule dotyczącym aplikacji Ustawienia serwera aplikacji.
Konfigurowanie reorganizacji
Należy skonfigurować reorganizacje dla zleceń wydruków i historii. Jeśli reorganizacje nie zostaną przygotowane, system z czasem zajmuje coraz więcej miejsca w bazie danych i staje się coraz wolniejszy.
Stare zlecenia przetwarzania oraz rejestry komunikatów również powinny być okresowo reorganizowane.
W przypadkach, w których nie istnieje w tym celu aplikacja działająca w tle, reorganizacja może zostać przeprowadzona za pomocą odpowiednich poleceń Toolshell.
Wskaźniki problemów z wydajnością
System Comarch ERP Enterprise oferuje możliwość rejestrowania ważnych danych dotyczących wydajności oraz sprawdzania niektórych danych w trakcie działania. Należy regularnie kontrolować te dane, aby w porę wykryć pogorszenie wydajności. Umożliwia to interwencję, zanim użytkownicy końcowi odczują spadek wydajności.
Kontrola Obciążenia Pamięci i Procesora (CPU)
Należy regularnie sprawdzać obciążenie komputerów, na których działają Serwery Aplikacyjne i systemy baz danych, za pomocą narzędzi systemów operacyjnych. Należy w szczególności sprawdzić, czy wszystkie komputery dysponują wystarczającą ilością rzeczywistej pamięci głównej.
Wydajność systemu zostaje znacząco ograniczona, jeśli części SAS lub inne usługi muszą być przenoszone na dysk twardy. Obciążenie CPU komputerów nie powinno stale przekraczać 50% w normalnej eksploatacji.
Monitorowanie w aplikacji Panel System
Należy regularnie monitorować współczynnik trafień (Hit-Rate) w partycjach Współdzielonej Pamięci Podręcznej (Shared Cache). Współczynnik ten dla partycji danych podstawowych musi wynosić co najmniej 95% po 4 godzinach działania Serwera Aplikacyjnego.
Jeżeli Hit-Rate dla partycji danych podstawowych spadnie poniżej 95%, należy zwiększyć jej rozmiar.
Więcej informacji na temat ustawiania partycji pamięci podręcznej można znaleźć w artykule Shared-Cache-Management.
Monitory wydajności
W każdym systemie automatycznie uruchamiany jest w tle monitor wydajności „DefaultDatabaseMoni-tor”, który monitoruje zachowanie czasu odpowiedzi systemu ERP i rejestruje zdarzenia, które przekraczają predefiniowane limity czasowe w bazie danych repozytorium. Ocena jest przeprowadzana m.in. za pośrednictwem aplikacji Panel System lub specjalistycznych raportów.
Straty wydajności spowodowane przez monitory nie są mierzalne, dlatego należy je regularnie analizować.
Poniższe operacje są kluczowe:
Należy obserwować przyrost czasów wykonania w dłuższym okresie czasu (np. 2 miesiące). Jeśli czasy dla operacji RoundTrip-Perform-Action lub RoundTrip-ODBC rosną średnio co tydzień, jest to wyraźna wskazówka, że wydajność ulegnie pogorszeniu w przyszłości.
W przypadku stwierdzenia, że operacja trwa dłużej niż maksymalny przewidziany dla niej czas, należy wykonać operację na systemie nieobciążonym. Jeżeli operacja wymaga znacznie mniej czasu na nieobciążonym systemie, oznacza to, że inne operacje obciążają system. W takim przypadku, przy użyciu Monitorów wydajności, należy sprawdzić najpierw dokumenty i raporty, a następnie aplikacje. Czasami polecenie SQL, które wykonuje Full-Table-Scan, zakłóca wydajność całego systemu.
Należy najpierw zoptymalizować operacje, które są zbyt wolne na nieobciążonym systemie. Należy sprawdzić wolną operację przy użyciu Monitorów wydajności pod kątem tego, czy w tej operacji używane są obszerne polecenia SQL. W razie potrzeby należy zoptymalizować te polecenia SQL, zanim operacja zostanie zoptymalizowana na systemie deweloperskim za pomocą Protokołów profilowania.
Szczegółowe informacje są dostępne w artykułach Monitory wydajności oraz Rejestracja i analiza informacji o wydajności. Podstawowe informacje na temat optymalizacji poleceń SQL są dostępne w artykule Optymalizacja wydajności. Rejestracja dostępu do bazy danych czynności w interaktywnej aplikacji jest opisana w artykule Protokoły profilowania – zapytania.



