Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Firebird Super oder Classic (https://www.delphipraxis.net/99331-firebird-super-oder-classic.html)

Jens Schumann 10. Sep 2007 20:34

Datenbank: Firebird • Version: 2.01 • Zugriff über: Native

Firebird Super oder Classic
 
Hallo,
mir steht ein Maschine mit 4 Prozessoren (Win 2003 Server) zur Verfügung.
Ist es günstiger den Super- oder Classic Server zu installieren.

Ich meine welche Version läuft schneller?

mkinzler 10. Sep 2007 20:40

Re: Firebird Super oder Classic
 
Handelt es sich um einen dedizierten Datenbankserver?
In diesem Fall wäre wohl die Classic besser.

hoika 11. Sep 2007 06:12

Re: Firebird Super oder Classic
 
Hallo,

kommt auch auf die Anzahl der gleichzeitigen Nutzer an,
der Classic braucht pro Prozess(=User=Connection)
(mehr) RAM.


Heiko

TBx 11. Sep 2007 06:32

Re: Firebird Super oder Classic
 
Wenn Du die Multiprozessorfähigkeit nutzen möchtest, bleibt Dir nur der Classic-Server. Dieser spaltet pro User einen Thread ab, der dann von der entsprechenden CPU bearbeitet wird. Der Superserver ist dazu (noch) nicht in der Lage. Bei diesem kann man extra die Affinity einstellen, um zuzuordnen, auf welchem Prozessor der Serverprozess laufen soll.

Gruß

onlinekater

mkinzler 11. Sep 2007 06:35

Re: Firebird Super oder Classic
 
Genauer gesagt, steigt der Speicherverbrauch mit jeder Connection an, da pro Verbindung eine Instanz samt Cache gestartet wird.
Daher kommt es auch auf die Art der Abfragen an.Werden immer die gleichen Abfragen abgeschickt, kann sich dies sogra negativ auswirken.

hoika 11. Sep 2007 09:14

Re: Firebird Super oder Classic
 
Hallo,

der Classic spaltet keinen Thread ab. Das ist der Superserver.
Beim Classic wird ein extra Prozess pro Connection erzeugt (incl. Speicher, Cache usw.).

Das Problem beim Superserver, dass es nur einen Prozess gibt,
der bei Multiprozessor-Systemen zwischen den Prozessoren "hin- und her springt",
was sich sehr negativ auf die DB-Leistung auswirkt.

Deshalb wird der Prozess (per firebird.conf) an den 1. Prozessor gebunden (affinity).

Alle anderen 3 Prozessoren werden also nicht genutzt (beim Superserver).
Sie stehen natürlich anderen Dingen (Prozessoren) zur Verfügung.

Das Problem des Classic ist, dass zur Synchronisation die Prozesse
untereinander kommunizieren müssen.

Thread-Synchronisaton ist einfacher (schneller).

Ich würde das einfach mal zuerst mit dem Classic ausprobieren,
die DB mal voll unter Last laufenlassen.

Und dann das ganze noch mal mit dem Superserver.

Ich persönlich ahbe genau ein System unter Classic (Linux),
alle anderen laufen als Superserver (Windows).


Heiko

TBx 11. Sep 2007 09:24

Re: Firebird Super oder Classic
 
Zitat:

Zitat von hoika
der Classic spaltet keinen Thread ab...
Beim Classic wird ein extra Prozess pro Connection erzeugt (incl. Speicher, Cache usw.).

Da hast Du allerdings Recht. Es ist kein Thread, sondern ein Prozess pro Connection, der erzeugt wird. Da hab ich schneller getippt, als darüber nachgedacht, welche Begrifflichkeit ich hier verwende.
Gemeint war genau das Verhalten, das Du hier beschreibst.

Gruß

Thomas


Alle Zeitangaben in WEZ +1. Es ist jetzt 19:09 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz