Checkliste Sage 200
-
Prüfen, ob ein Antivirus oder Firewall Software auf dem Applikation Server und SQL Server vorhanden ist. Wenn ein Antivirus vorhanden ist, muss diese für den Betrieb von Sage 200 entsprechend konfiguriert oder abgeschaltet sein. Die Verzeichnisse wo die SQL Datenbanken Dateien (mdf und ldf) liegen, dürfen vom Antivirus nicht gescannt oder überwacht werden. Den Firewall empfehlen wir abzuschalten, wenn die Applikation oder SQL Servern nicht in einer DMZ laufen.
-
Prüfen, ob der Druckertreiber noch aktuell ist und gegebenenfalls ein Update durchführen.
-
In Admin in den Einstellungen prüfen, ob sämtliche definierte Verzeichnisse zugreifbar sind für alle Benutzer.
-
Unter Admin – Sage 200 Schaltfläche – Einstellungen – Einstellungen 3/3 die automatische Suche nach Service Packs bei jedem Aufstarrten einer Applikation deaktivieren.

-
Prüfen ob auf der Grafikkarte der Treiber aktualisiert ist. Insbesondere auf dem Server auf welchem die TerminalServer-Software installiert ist.
-
Ereignismonitor in Admin prüfen. Welche Felder werden überacht? Sind es Stammdaten oder Bewegungsdaten? Bewegungsdaten sollten auf keinen Fall überwacht werden
-
Im Zusammenhang mit dem Ereignismonitor soll die Anzahl der Datensätze in der Tabelle history überprüft werden. Werden diese auch tatsächlich ausgwertet? Wenn nicht, können die Datensätze problemlos gelöscht werden.
-
Basisinfrastruktur
Mit Basisinfrastruktur werden das Netzwerk sowie eine vorhandene Virtualisierungsumgebung und/oder ein Storagesystem bezeichnet.
Virtualisierungsumgebung
Die folgenden Beispiele orientieren sich an VMware vSphere. Sinngemäss sind sie auf andere Hypervisor übertragbar.
Wie viele virtuelle Maschinen werden pro Host (ESX-Server) betrieben?
-
CPU: Es sollten nicht mehr als 4 vCPUs pro physikalischem Prozessorkern betrieben werden. Optimal ist ein Wert unter 3. Der folgende PowerCLI-Befehl liest die Werte aus:
Get-VMhost <esx hostname> | Get-VM
-
Memory: Es sollte nicht mehr Memory alloziert werden, als genutzt werden kann. Die Memory-Auslastung pro Host sollte 80% nicht übersteigen.
Wie viele virtuelle Maschinen werden pro Datastore (Disk-Array) betrieben?
Hier kommen verschiedene Faktoren zum Tragen. Siehe dazu auch das nächste Kapitel «Storagesystem». Überprüfen kann man die Diskperformance am besten über zwei Werte:
-
Latenz des Datastores
-
Latenz der virtuellen Festplatte der VM
Beide Durchschnittswerte sollten unter 10ms liegen. Bis 15ms sind in Ordnung. Ab 20ms werden die Systeme üblicherweise merkbar langsam. Sollten in der Aufstellung hohe Peak-Werte auftauchen, sollte überprüft werden, ob das Storagesystem korrekt konfiguriert ist, bzw. ob die Festplatten zu langsam oder überlastet sind (siehe Hardware-Mindestanforderungen).
Storagesystem
Einen Grossteil der gefühlten Performance macht das Storagesystem aus. Ob es interner, lokaler Storage oder ein ein Shared Storagesystem ist, spielt dabei keine Rolle.
Festplatten und RAID-Verbund
Das Wichtigste in Bezug auf die Festplattenperformance sind schnelle Festplatten, d.h. mindestens 10k RPM (Umdrehungen pro Minute). Dass ein RAID-Verbund für die Datensicherheit unverzichtbar ist, ist unbestritten. Dabei bietet ein RAID5-Verbund das Beste Verhältnis zwischen Performance und Speichernutzbarkeit, da nur ein Fünftel der Festplatten für die Redundanz verwendet werden. Auf der anderen Seite bietet ein RAID10-Verbund die höchste Performance, aber auch eine tiefe Speichernutzbarkeit von 50%.
In jedem Fall ist ein RAID5-Verbund mit fünf 2.5"-Festplatten mit 10k RPM ausreichend, sofern dieser nicht mit virtuellen Maschinen überbelastet ist (siehe vorhergehendes Kapitel «Virtualisierungsumgebung»).
Anbindung des Storagesystems
Auswirkungen auf die Latenz hat auch die Anbindung des Storagesystems an den Hypervisor-Host. Je direkter die Anbindung, desto tiefer die Latenz. Beispiele dafür sind:
-
Anbindung über einen internen SAS-Controller
-
Anbindung von Shared Storage über Direkte SAS-Verbindungen
-
Anbindung von Storage über FibreChannel-Verbindungen
Je mehr Overhead zwischen Storage und Host steht, desto höher kann die Latenz werden:
-
Anbindung über Ethernet und iSCSI
-
Anbindung über Ethernet und NFS
Cache-Systeme
Weiter gibt es Möglichkeiten zur Performanceoptimierung mit Hilfe von Cache-Systemen. Hier werden oft genutzte Daten in einen schnellen Speicher ausgelagert, damit der Zugriff darauf schneller erfolgen kann. Je nach Storagesystem sind das z.B. SSDs oder Server-RAM. Hier muss der Hersteller des Storagesystems mit einbezogen werden.
Netzwerk
Das Netzwerk sollte mit heute üblicher Geschwindigkeit von mindestens 1GB/s betrieben werden. Ausserdem sollten sich App-Server und DB-Server im gleichen Subnet befinden und nicht durch eine Firewall getrennt sein.
Server-Mindestanforderungen
-
Wurden die dokumentierten Mindestanforderungen bezgl. Hardware eingehalten?
-
Stimmt die Hardware-Ausstattung mit der tatsächlichen Last überein?
-
Zeigt der Windows Resource Monitor auf Application Server und SQL Server hohe Last in den Bereichen CPU, Memory, Disk und Network?
-
Werden die Server durch andere Applikationen oder Aufgaben belastet?
IIS-Server
-
Auf dem Applikation Server das Verzeichnis „C:\Windows\Temp“ für das Schreiben von temporären Daten freigeben.
-
Ab Windows Server 2012: Für die Version „Extra“ auf dem IIS alle Sage 200 Applikation Pools den „Start Mode“ auf „AlwaysRunning“ und „Start Automatically“ auf „True“ stellen.

-
Auf dem IIS werden alle Sage 200 Applikation Pools am Abend um 00:10 Uhr zurückgesetzt. Bei einem 24 Stunden Betrieb, empfehlen wir diesen Eintrag bei allen Applikation Pools von Sage 200 zu löschen.

SQL-Server Tuning
-
Docware auf gleichem DB-Server?
-
Andere DBs von anderen Servern?
Hardware – Einstellungen
-
Bei einfachen Server mit 2 Harddisk und normalem IDE Controller muss darauf geachtet werden, dass dort jede HD an einem separaten IDE Channel angeschlossen ist. Beide HD’s müssen im „Ultra DMA“ Mode laufen (Win2K -> Control Panel -> Computer Management -> Device Manager -> IDE ATA/ATAPI Controller -> Primary/Secondary IDE Channel -> Properties -> Tab „Advanced Settings“)
-
Harddisk sollten mindestens 2 MB (besser 4MB) Cache haben und den gleichen Datendurchsatz haben (empfohlen Ultra DMA 100)
SQL-Server- und Datenbank – Einstellungen
-
Priorität des SQL-Servers höher setzen (bei "Boost SQL Server priority on Windows" in SQL-Server-Eigenschaften, Tab "Processor" setzen). Das ist nur erforderlich, wenn auf dem Server noch andere Prozesse ablaufen. Ist es ein reiner SQL-Server, dann muss man es nicht einschalten.
-
"max server memory (MB)" auf maximal reales Memory minus 64MB setzen. Dies kann auch vom Eigenschaftsfenster der Servereinstellung gemacht werden indem der Memory-Schieber für die max.-Einstellungen leicht nach links gerückt wird (oder mit sp_config).
-
"auto close" und "auto shrink" ausschalten.
-
"auto update statistics" und "auto create statistics" bei genügend Memory einschalten. Verhalten testen, sofern nach kontinuierlicher Arbeit keine Verbesserung (oder eine Verschlechterung) festgestellt wird wieder ausschalten.
-
Führen sie auf der DB von Zeit zu Zeit folgenden Befehl aus:
exec sp_MSforeachtable @command2 = "ALTER INDEX ALL ON ? REBUILD", @command1 = "print '?'"
Dieser Befehl erstellt die Indexe neu und verbessert die Performance auf der DB. Vorsicht: bei grösseren Datenbanken kann dies durchaus mehrere Stunden laufen. -
"Database compatibility level" auf 70 setzen (mit z.B: "sp_dbcmptlevel sbs 70")
TempDB
-
Physisch von den Datenbanken getrennt einrichten und dazu auf dem schnellsten Device des Servers
-
Dateigrösse des Dat- und Log-Files mindestens 128 MB, bei grösseren DB’s (ab 1 GB) werden 512 MB empfohlen.
-
Wachstum (File growth) der TempDB nicht prozentual, sondern in MB einschalten. Wachstumsgrösse in 64 MB Schritten, bei grösseren DB’s (ab 1 GB) werden 512 MB empfohlen.
Tempdb:
Drive C: dat-File tempdb.MDF
Drive D: log-File: templog.LDF
Die tempdb kann mit "alter database …" geändert werden:
Tempdb Dat-File auf Drive c: ändern:
alter database tempdb
modify file (name = tempdev,
FILENAME = 'c:\mssql7\data\tempdb.mdf')
Tempdb Log-File auf Drive d: ändern:
alter database tempdb
modify file (name = templog,
FILENAME = 'd:\mssql7\data\tempdb.ldf')
Kundendatenbank
-
Physisch Dat-File nicht auf dem gleichen Device wie TempDB einrichten.
-
Dateigrösse des Logfiles mindestens 128 MB, bei grösseren DB’s (ab 1 GB) werden 512 MB empfohlen.
-
Wachstum (File growth) der Datenbank nicht prozentual, sondern in MB einschalten. Wachstumsgrösse in 128 MB Schritten, bei grösseren DB’s (ab 1 GB) werden 512 MB empfohlen.
Sage200:
Drive C: log-File sage200_log.LDF
Drive D: dat-File: sage200_dat.MDF
Beispiel eines minimalen Servers
C-Drive:
TempDB Dat-File
Sage200 Log-File
D-Drive:
TempDB Log-File
Sage200 Dat-File
Zum Testen des Datendurchsatzes der Harddisk mit dem SQL-Server kann das unten aufgeführte Tool verwendet werden. Für die oben beschriebene minimale Konfiguration sollte mindestens ein Datendurchsatz von 8 MB/s erreicht werden.
Aufruf für die Harddisk C:
SQL70IOStress /Fc:\Stress.mdf /Lc:\Stress.ldf
Aufruf für die Harddisk D:
SQL70IOStress /Fd:\Stress.mdf /Ld:\Stress.ldf
Anzahl Benutzer auf dem SQL-Server bereinigen
Durch häufiges Zurücklesen von Kunden-DBs kann es dazu kommen, dass sich mit der Zeit tausende von User auf dem eigenen SQL-Server befinden. Das kann beim Start der Applikation zu Verzögerungen führen.
Mit diesem Script können ungewollte Benutzer auf dem SQL-Server gelöscht werden:
declare @login_name varchar(max) declare @command nvarchar(max) --\\\ * Lohnartkonto-Endungen * ///-- declare login_cursor cursor for select name from sys.sql_logins where name not in ( '##MS_PolicyTsqlExecutionLogin##', '##MS_PolicyEventProcessingLogin##', 'sa', 'sage200admin', 'sage200reporting', 'sbsadmin', 'test1', 'test2', 'test3', 'test4', 'test7', 'sbouser' ) open login_cursor fetch login_cursor into @login_name while (@@fetch_status <> -1) begin if (@@fetch_status <> -2) begin select @command = 'DROP LOGIN [' + @login_name + ']' print @command exec sp_executesql @command end fetch login_cursor into @login_name end close login_cursor deallocate login_cursor
Clients
-
Auf der Userseite prüfen, ob ein Update für den Grafikkarte Treiber vorhanden ist. Nachdem Microsoft die WPF Technologie eingeführt hat, haben viele Grafikkarten Hersteller ein Update zur Verfügung gestellt.
-
Beim User/Client den Aerostyle in Windows ausschalten.

-
Ab Service Pack 31.03.2016 steht unter Einstellung 2/3 die Funktion „Hardwaregrafikbeschleunigung aktivieren“ zur Verfügung. Um einen flüssigeren Bildaufbau zu erreichen, muss beim Einsatz von Terminalserver diese Funktion ausgeschaltet sein. Diese Einstellung gilt pro Client Installation und wird pro User im Windows Registry „EnableHardwareAcceleration“ gespeichert.
Kommentare
0 Kommentare
Bitte melden Sie sich an, um einen Kommentar zu hinterlassen.