3.2.4. Server modes

Some installers ask you to choose between Classic, SuperClassic and Superserver mode. What are they?

  • Classic mode (aka MultiProcess) involves a single listening process that spawns off an additional process for each client connection. Using a locking mechanism, it allows shared connections to database files.

  • SuperClassic (ThreadedShared) is a single server process. Client connections are handled by separate threads, each having their own database page cache. Other processes (e.g. embedded servers) may open the same database simultaneously (hence the Shared).

  • Superserver (ThreadedDedicated) is also a single server process with threads handling client connections. There is a single, common database page cache. The server requires exclusive access to each database file it opens (hence the Dedicated).

Each mode is fully stable and there is no reason to categorically prefer one to the other. Of course, you may have your own specific considerations. When in doubt, just follow the installer default for now. Changing the server mode later can be done via the configuration file firebird.conf and requires a restart but not reinstallation. The server mode can even be configured per database (consult the Release Notes for details).

Users of Firebird 2.5 or earlier: please notice that as from Firebird 3, Superserver fully supports the use of multiple processors/cores out of the box, so lack of SMP support is no longer a reason to avoid it.