Główna / Pomoc / Gdy program działa wolno

Gdy program działa wolno

Gdy program działa wolno

Co można zrobić, gdy program pracujący na serwerze Firebird działa wolno:

  • jeśli komputer będący serwerem posiada kilka procesorów lub  procesor wielordzeniowy, zalecamy instalację Firebird 3.0.11 SuperServer. Na komputerach z jednym procesorem/rdzeniem należy korzystać z Firebird w wersji co najmniej 3.0.11 SuperServer;
  • zalecany jest Firebird w wersji w wersji co najmniej 3.0.11; należy zainstalować najnowszą podwersję; wersje starsze niż nie są wspierane, gdyż zawierają błędy;
  • dysk twardy:
    – pliki z bazami danych powinny znajdować się na innym fizycznym dysku, niż ten, na którym zainstalowany jest system (np. Windows);
    – zasoby tego dysku nie powinny być udostępnione w sieci;
    – kontroler RAID 5 bardzo spowalnia zapis danych do bazy – nie należy z niego korzystać;
    – sprawdzić, czy dysk z bazą nie jest pofragmentowany i czy nie jest wykonywana automatyczna kopia (właściwości dysku w Windows);
  • jeśli bazy danych są duże (większe niż kilkaset MB lub kilka GB), należy sprawdzić konfigurację sprzętową – czy procesor nie jest zbyt obciążony i czy dostępna jest odpowiednia ilość pamięci RAM. Jeśli obciążenie sprzętowe jest zbyt duże, należy zmienić konfigurację sprzętową serwera na lepszą;
  • pracę programów komunikujących się przez sieć mogą bardzo spowalniać programy antywirusowe oraz zapory internetowe. Mogą one przetrzymywać część danych, znacznie opóźniając ich dostarczenie do serwera/klienta. W przypadku problemów z powolną pracą na Firebird, można spróbować wyłączyć na pewien czas programy antywirusowe i firewall (zarówno na serwerze, jak i na stacjach roboczych) i sprawdzić, czy wpłynie to na wydajność pracy.Programy antywirusowe należy skonfigurować tak, aby nie skanowały portu, po którym komunikuje się Firebird (domyślnie 3050) oraz wykluczyć programy Huzar Software ze skanowania antywirusowego. Należy także wykluczyć ze skanowania wszystkie katalogi, w których znajdują się pliki z bazami danych Firebird (zobacz więcej informacji);
    Przykładem może być program Windows Defender Security Center. Aby skonfigurować program w sposób omawiany powyżej, należy zmienić ustawienia ochrony przed wirusami i zagrożeniami. W tym celu należy dodać wykluczenia pewnych elementów, które w przyszłości będą pomijane ze skanowania. Przykładowe ustawienie jest zaprezentowane poniżej:

  • sprawdzić przeciążenie sieci, wykonując ping do serwera Firebird z linii poleceń (uruchamianej przez Start Uruchom wpisać “cmd” potwierdzić Enter), poleceniem ping z parametrem -l 8192 (wysyłane będą pakiety 8 kB, używane domyślnie przez Firebirda), np.:
    ping 192.168.1.109 -l 8192
    Opóźnienie nie powinno być większe niż 2 ms;
  • zaktualizować sterownik do karty sieciowej – nieaktualny sterownik może powodować nieprawidłową pracę sieci (zanotowaliśmy przypadki nawet dziesięciokrotnego przyspieszenia sieci po aktualizacji sterownika);
  • w przypadku większych firm (więcej niż kilka stanowisk), niezbędna jest karta sieciowa 1 GBit, nie wolniejsza;
  • sprawdzić czy w pliku firebird.log, znajdującym się w folderze Firebirda, nie znajdują się zapisy sugerujące uszkodzenie bazy danych;
  • zarządzanie operacją sweep (obciążającą pracę serwera):
    – ręczne wykonywanie sweep w czasie, gdy serwer nie jest obciążony (można skorzystać z harmonogramu zadań):
    gfix -user SYSDBA -password masterkey D:sciezka_do_bazy.fdb -sweep – wyłączenie automatycznego sweep:
    gfix -user SYSDBA -password masterkey %BAZA% -h 0Sweep należy wykonywać regularnie i upewnić się, że sweep został wykonany; niewykonywanie operacji sweep może bardzo spowolnić pracę na bazie danych;
  • należy regularnie (raz w miesiącu) wykonywać kopię zapasową bazy i przywracać bazę z kopii (przepakowanie bazy) – zmniejsza to rozmiar bazy i usuwa część uszkodzeń
  • programy Huzar Software najlepiej wywoływać ze stacji roboczych, a nie z dysku sieciowego – eliminuje to potrzebę przesyłania przez sieć programu, które może znacznie spowolnić uruchamianie programu (w dużych firmach przy obciążonej sieci może to być nawet kilkanaście minut).Przykład. Załóżmy, że program Winsadib.exe ma lokalizację q:programyHSwinsadib.exe. Na pulpicie użytkownika zamiast skrótu do tego pliku należy umieścić skrót do pliku .bat o treści:
    xcopy q:programyHSwinsadib.exe c:programyHS /d /y
    c:programyHSwinsadib.exe

    Wówczas kopiowanie będzie miało miejsce tylko wtedy, gdy na serwerze (czyli w folderze q:programyHS) plik winsadib.exe będzie nowszy, niż na stacji roboczej, następnie zostanie uruchomiony program.
    Należy pamiętać również o plikach .dll, z których korzysta program.
  • w programie WinSADIB można wykonać odchudzanie bazy, usuwając stare, niepotrzebne już dane (opcje: Narzędzia Narzędzia administratora Odchudzanie całej bazy oraz Odchudzanie bazy komunikatów). Szczegóły operacji:
    • Aby wykonać odchudzanie bazy, należy przydzielić sobie uprawnienie “Funkcje specjalne”. Operację może wykonywać tylko administrator programu WinSAD.
    • Po wykonaniu odchudzania bazy należy wykonać archiwum bazy, a następnie wykonać operację przywracania bazy z kopii. Tylko po wykonaniu takiej operacji rozmiar pliku bazy danych ulegnie zmniejszeniu, a kolejne archiwa będą wykonywać się szybciej.
    • Odchudzanie całej bazy polega na usuwaniu dokumentów SAD, wpisów RPU, faktur i innych dokumentów starszych niż zadana data.
    • Odchudzanie bazy komunikatów polega na usuwaniu komunikatów nie podlegających obowiązkowi archiwizowania. Opcje usuwania komunikatów można dostosować, zaznaczając odpowiednie pola odpowiadające za typy komunikatów:

Dział pomocy