Subject Re: Difference between Classic & SuperServer F1.5.2
Author Adam
--- In, "rekkod" <anton@d...> wrote:
> Hi All
> what is the difference between Classic & SupperServer.

There is a whole FAQ on the topic on the Firebird website, here is the
direct link to the whitepaper.

In a nutshell, Classic (CS from here on) spawns a new process for
every connection, Superserver (SS from here on) spawns a new thread
within the single server process for every connection.

CS will therefore consume more resources per connection than SS and
can not share a common cache. SS can also have a dedicated garbage
collection thread rather than relying on cooperative garbage collection.

There are a couple of problems with SS that mean that in some cases CS
is a better choice. Firstly, in multi processor machines, SS is
(currently) unable to send different threads to different CPUs, so in
multiple CPU systems (or even in hyperthreaded systems) at best the
server is executed only on a single CPU (which is a waste). At worst,
the OS goes silly and see saws the process from one CPU (or virtual
CPU) to the other, making it even slower than if there was only a
single CPU.